mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-04-11 00:39:36 +00:00
DebugInfo: Fix and test a regression caused by r207263 causing the DW_AT_object_pointer to go missing on blocks
Noticed by inspection. Test coverage added. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207333 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
708d680565
commit
5fc870ddf5
@ -538,9 +538,9 @@ DIE *DwarfDebug::createScopeChildrenDIE(
|
||||
std::unique_ptr<DIE> Variable =
|
||||
TheCU.constructVariableDIE(*DV, Scope->isAbstractScope());
|
||||
assert(Variable);
|
||||
Children.push_back(std::move(Variable));
|
||||
if (DV->isObjectPointer())
|
||||
ObjectPointer = Variable.get();
|
||||
Children.push_back(std::move(Variable));
|
||||
}
|
||||
for (LexicalScope *LS : Scope->getChildren())
|
||||
if (DIE *Nested = constructScopeDIE(TheCU, LS))
|
||||
|
@ -7,6 +7,7 @@
|
||||
|
||||
; CHECK: DW_TAG_subprogram
|
||||
; CHECK: DW_AT_name{{.*}}_block_invoke
|
||||
; CHECK: DW_AT_object_pointer
|
||||
|
||||
; CHECK-NOT: DW_TAG_subprogram
|
||||
; CHECK: DW_TAG_formal_parameter
|
||||
|
Loading…
x
Reference in New Issue
Block a user