diff options
author | Eric Christopher <echristo@gmail.com> | 2012-11-27 00:13:58 +0000 |
---|---|---|
committer | Eric Christopher <echristo@gmail.com> | 2012-11-27 00:13:58 +0000 |
commit | 8ba01175cce553091b7367c4edb758b32266cc15 (patch) | |
tree | d57252abf27761ed103dbb95884eddf31f3effe4 | |
parent | bdab800b02d8a3fca276d2df2119e036a023c9df (diff) |
Reorder section output ordering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168638 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 52 |
1 files changed, 27 insertions, 25 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 97f61e8610..d7733846d1 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -904,10 +904,34 @@ void DwarfDebug::endModule() { emitSectionLabels(); // Emit all the DIEs into a debug info section - emitDebugInfo(); + if (!useDwarfFission()) { + emitDebugInfo(); - // Corresponding abbreviations into a abbrev section. - emitAbbreviations(); + // Corresponding abbreviations into a abbrev section. + emitAbbreviations(); + + // Emit info into a debug loc section. + emitDebugLoc(); + + // Emit info into a debug aranges section. + emitDebugARanges(); + + // Emit info into a debug ranges section. + emitDebugRanges(); + + // Emit info into a debug macinfo section. + emitDebugMacInfo(); + + // Emit inline info. + // TODO: When we don't need the option anymore we + // can remove all of the code that this section + // depends upon. + if (useDarwinGDBCompat()) + emitDebugInlineInfo(); + + // Emit info into a debug str section. + emitDebugStr(); + } // Emit info into the dwarf accelerator table sections. if (useDwarfAccelTables()) { @@ -923,28 +947,6 @@ void DwarfDebug::endModule() { if (useDarwinGDBCompat()) emitDebugPubTypes(); - // Emit info into a debug loc section. - emitDebugLoc(); - - // Emit info into a debug aranges section. - emitDebugARanges(); - - // Emit info into a debug ranges section. - emitDebugRanges(); - - // Emit info into a debug macinfo section. - emitDebugMacInfo(); - - // Emit inline info. - // TODO: When we don't need the option anymore we - // can remove all of the code that this section - // depends upon. - if (useDarwinGDBCompat()) - emitDebugInlineInfo(); - - // Emit info into a debug str section. - emitDebugStr(); - // clean up. SPMap.clear(); for (DenseMap<const MDNode *, CompileUnit *>::iterator I = CUMap.begin(), |