diff options
Diffstat (limited to 'lib/Bitcode/Writer/BitcodeWriter.cpp')
| -rw-r--r-- | lib/Bitcode/Writer/BitcodeWriter.cpp | 15 | 
1 files changed, 13 insertions, 2 deletions
| diff --git a/lib/Bitcode/Writer/BitcodeWriter.cpp b/lib/Bitcode/Writer/BitcodeWriter.cpp index e79eeb079ed8..622f7eaf0784 100644 --- a/lib/Bitcode/Writer/BitcodeWriter.cpp +++ b/lib/Bitcode/Writer/BitcodeWriter.cpp @@ -1032,6 +1032,17 @@ static void WriteDINamespace(const DINamespace *N, const ValueEnumerator &VE,    Record.clear();  } +static void WriteDIModule(const DIModule *N, const ValueEnumerator &VE, +                          BitstreamWriter &Stream, +                          SmallVectorImpl<uint64_t> &Record, unsigned Abbrev) { +  Record.push_back(N->isDistinct()); +  for (auto &I : N->operands()) +    Record.push_back(VE.getMetadataOrNullID(I)); + +  Stream.EmitRecord(bitc::METADATA_MODULE, Record, Abbrev); +  Record.clear(); +} +  static void WriteDITemplateTypeParameter(const DITemplateTypeParameter *N,                                           const ValueEnumerator &VE,                                           BitstreamWriter &Stream, @@ -1519,8 +1530,8 @@ static void WriteConstants(unsigned FirstVal, unsigned LastVal,      } else if (isa<ConstantArray>(C) || isa<ConstantStruct>(C) ||                 isa<ConstantVector>(C)) {        Code = bitc::CST_CODE_AGGREGATE; -      for (unsigned i = 0, e = C->getNumOperands(); i != e; ++i) -        Record.push_back(VE.getValueID(C->getOperand(i))); +      for (const Value *Op : C->operands()) +        Record.push_back(VE.getValueID(Op));        AbbrevToUse = AggregateAbbrev;      } else if (const ConstantExpr *CE = dyn_cast<ConstantExpr>(C)) {        switch (CE->getOpcode()) { | 
