From: Eric Christopher Date: Tue, 5 Feb 2013 07:32:03 +0000 (+0000) Subject: Construct a skeleton cu for each compile unit in the module, not just X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=31fb5dafce280ddcc945e2136d11e5c69a3d3493;p=oota-llvm.git Construct a skeleton cu for each compile unit in the module, not just for the first compile unit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174352 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 6b19c5a7519..967c149b53d 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -686,12 +686,12 @@ CompileUnit *DwarfDebug::constructCompileUnit(const MDNode *N) { if (!FirstCU) FirstCU = NewCU; - // This should be a unique identifier when we want to build .dwp files. - if (useSplitDwarf()) + if (useSplitDwarf()) { + // This should be a unique identifier when we want to build .dwp files. NewCU->addUInt(Die, dwarf::DW_AT_GNU_dwo_id, dwarf::DW_FORM_data8, 0); - - if (useSplitDwarf() && !SkeletonCU) - SkeletonCU = constructSkeletonCU(N); + // Now construct the skeleton CU associated. + constructSkeletonCU(N); + } InfoHolder.addUnit(NewCU); @@ -2477,6 +2477,9 @@ CompileUnit *DwarfDebug::constructSkeletonCU(const MDNode *N) { if (!CompilationDir.empty()) NewCU->addLocalString(Die, dwarf::DW_AT_comp_dir, CompilationDir); + if (!SkeletonCU) + SkeletonCU = NewCU; + SkeletonHolder.addUnit(NewCU); return NewCU;