summaryrefslogtreecommitdiff
path: root/include/llvm/Bitcode/BitstreamWriter.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-04-06 21:12:29 +0000
committerChris Lattner <sabre@nondot.org>2009-04-06 21:12:29 +0000
commit40728791f5c8c77d3460a30fcdce6d1fac72aa0d (patch)
treeaea4c6023f6a41e10d2c6529fc3a24570bcefa6e /include/llvm/Bitcode/BitstreamWriter.h
parent5ce1b11412d19c95e390a43d850829c99694f5a9 (diff)
downloadllvm-40728791f5c8c77d3460a30fcdce6d1fac72aa0d.tar.gz
llvm-40728791f5c8c77d3460a30fcdce6d1fac72aa0d.tar.bz2
llvm-40728791f5c8c77d3460a30fcdce6d1fac72aa0d.tar.xz
simplify to reduce indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68460 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Bitcode/BitstreamWriter.h')
-rw-r--r--include/llvm/Bitcode/BitstreamWriter.h67
1 files changed, 34 insertions, 33 deletions
diff --git a/include/llvm/Bitcode/BitstreamWriter.h b/include/llvm/Bitcode/BitstreamWriter.h
index aed7c2f48a..acb61d88bd 100644
--- a/include/llvm/Bitcode/BitstreamWriter.h
+++ b/include/llvm/Bitcode/BitstreamWriter.h
@@ -285,39 +285,7 @@ public:
template<typename uintty>
void EmitRecord(unsigned Code, SmallVectorImpl<uintty> &Vals,
unsigned Abbrev = 0) {
- if (Abbrev) {
- unsigned AbbrevNo = Abbrev-bitc::FIRST_APPLICATION_ABBREV;
- assert(AbbrevNo < CurAbbrevs.size() && "Invalid abbrev #!");
- BitCodeAbbrev *Abbv = CurAbbrevs[AbbrevNo];
-
- EmitCode(Abbrev);
-
- // Insert the code into Vals to treat it uniformly.
- Vals.insert(Vals.begin(), Code);
-
- unsigned RecordIdx = 0;
- for (unsigned i = 0, e = static_cast<unsigned>(Abbv->getNumOperandInfos());
- i != e; ++i) {
- const BitCodeAbbrevOp &Op = Abbv->getOperandInfo(i);
- if (Op.isLiteral() || Op.getEncoding() != BitCodeAbbrevOp::Array) {
- assert(RecordIdx < Vals.size() && "Invalid abbrev/record");
- EmitAbbreviatedField(Op, Vals[RecordIdx]);
- ++RecordIdx;
- } else {
- // Array case.
- assert(i+2 == e && "array op not second to last?");
- const BitCodeAbbrevOp &EltEnc = Abbv->getOperandInfo(++i);
-
- // Emit a vbr6 to indicate the number of elements present.
- EmitVBR(static_cast<uint32_t>(Vals.size()-RecordIdx), 6);
-
- // Emit each field.
- for (; RecordIdx != Vals.size(); ++RecordIdx)
- EmitAbbreviatedField(EltEnc, Vals[RecordIdx]);
- }
- }
- assert(RecordIdx == Vals.size() && "Not all record operands emitted!");
- } else {
+ if (!Abbrev) {
// If we don't have an abbrev to use, emit this in its fully unabbreviated
// form.
EmitCode(bitc::UNABBREV_RECORD);
@@ -325,7 +293,40 @@ public:
EmitVBR(static_cast<uint32_t>(Vals.size()), 6);
for (unsigned i = 0, e = static_cast<unsigned>(Vals.size()); i != e; ++i)
EmitVBR64(Vals[i], 6);
+ return;
+ }
+
+ unsigned AbbrevNo = Abbrev-bitc::FIRST_APPLICATION_ABBREV;
+ assert(AbbrevNo < CurAbbrevs.size() && "Invalid abbrev #!");
+ BitCodeAbbrev *Abbv = CurAbbrevs[AbbrevNo];
+
+ EmitCode(Abbrev);
+
+ // Insert the code into Vals to treat it uniformly.
+ Vals.insert(Vals.begin(), Code);
+
+ unsigned RecordIdx = 0;
+ for (unsigned i = 0, e = static_cast<unsigned>(Abbv->getNumOperandInfos());
+ i != e; ++i) {
+ const BitCodeAbbrevOp &Op = Abbv->getOperandInfo(i);
+ if (Op.isLiteral() || Op.getEncoding() != BitCodeAbbrevOp::Array) {
+ assert(RecordIdx < Vals.size() && "Invalid abbrev/record");
+ EmitAbbreviatedField(Op, Vals[RecordIdx]);
+ ++RecordIdx;
+ } else {
+ // Array case.
+ assert(i+2 == e && "array op not second to last?");
+ const BitCodeAbbrevOp &EltEnc = Abbv->getOperandInfo(++i);
+
+ // Emit a vbr6 to indicate the number of elements present.
+ EmitVBR(static_cast<uint32_t>(Vals.size()-RecordIdx), 6);
+
+ // Emit each field.
+ for (; RecordIdx != Vals.size(); ++RecordIdx)
+ EmitAbbreviatedField(EltEnc, Vals[RecordIdx]);
+ }
}
+ assert(RecordIdx == Vals.size() && "Not all record operands emitted!");
}
//===--------------------------------------------------------------------===//