File tree Expand file tree Collapse file tree 1 file changed +6
-6
lines changed Expand file tree Collapse file tree 1 file changed +6
-6
lines changed Original file line number Diff line number Diff line change @@ -2658,12 +2658,12 @@ Error DWARFLinker::link() {
2658
2658
continue ;
2659
2659
}
2660
2660
2661
- // In a first phase, just read in the debug info and load all clang modules.
2661
+ // Clone all the clang modules with requires extracting the DIE units. We
2662
+ // don't need the full debug info until the Analyze phase.
2662
2663
OptContext.CompileUnits .reserve (
2663
2664
OptContext.File .Dwarf ->getNumCompileUnits ());
2664
-
2665
2665
for (const auto &CU : OptContext.File .Dwarf ->compile_units ()) {
2666
- auto CUDie = CU->getUnitDIE (false );
2666
+ auto CUDie = CU->getUnitDIE (/* ExtractUnitDIEOnly= */ true );
2667
2667
if (Options.Verbose ) {
2668
2668
outs () << " Input compilation unit:" ;
2669
2669
DIDumpOptions DumpOpts;
@@ -2704,9 +2704,9 @@ Error DWARFLinker::link() {
2704
2704
return ;
2705
2705
2706
2706
for (const auto &CU : Context.File .Dwarf ->compile_units ()) {
2707
- // The !isClangModuleRef condition effectively skips over fully resolved
2708
- // skeleton units .
2709
- auto CUDie = CU->getUnitDIE ();
2707
+ // Previously we only extracted the unit DIEs. We need the full debug info
2708
+ // now .
2709
+ auto CUDie = CU->getUnitDIE (/* ExtractUnitDIEOnly= */ false );
2710
2710
std::string PCMFile = getPCMFile (CUDie, Options.ObjectPrefixMap );
2711
2711
2712
2712
if (!CUDie || LLVM_UNLIKELY (Options.Update ) ||
You can’t perform that action at this time.
0 commit comments