mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-25 21:18:19 +00:00
Sink DwarfDebug::constructLexicalScopeDIE into DwarfCompileUnit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219414 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -376,7 +376,7 @@ void DwarfCompileUnit::constructScopeDIE(
|
||||
std::make_move_iterator(Children.end()));
|
||||
return;
|
||||
}
|
||||
ScopeDIE = DD->constructLexicalScopeDIE(*this, Scope);
|
||||
ScopeDIE = constructLexicalScopeDIE(Scope);
|
||||
assert(ScopeDIE && "Scope DIE should not be null.");
|
||||
}
|
||||
|
||||
@@ -461,4 +461,20 @@ DwarfCompileUnit::constructInlinedScopeDIE(LexicalScope *Scope) {
|
||||
return ScopeDIE;
|
||||
}
|
||||
|
||||
// Construct new DW_TAG_lexical_block for this scope and attach
|
||||
// DW_AT_low_pc/DW_AT_high_pc labels.
|
||||
std::unique_ptr<DIE>
|
||||
DwarfCompileUnit::constructLexicalScopeDIE(LexicalScope *Scope) {
|
||||
if (DD->isLexicalScopeDIENull(Scope))
|
||||
return nullptr;
|
||||
|
||||
auto ScopeDIE = make_unique<DIE>(dwarf::DW_TAG_lexical_block);
|
||||
if (Scope->isAbstractScope())
|
||||
return ScopeDIE;
|
||||
|
||||
attachRangesOrLowHighPC(*ScopeDIE, Scope->getRanges());
|
||||
|
||||
return ScopeDIE;
|
||||
}
|
||||
|
||||
} // end llvm namespace
|
||||
|
||||
Reference in New Issue
Block a user