diff options
Diffstat (limited to 'lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp')
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp b/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp index 0007f13e91..4b65a9b572 100644 --- a/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp @@ -1109,6 +1109,8 @@ DIE *CompileUnit::getOrCreateSubprogramDIE(DISubprogram SP) { addType(Arg, ATy); if (ATy.isArtificial()) addFlag(Arg, dwarf::DW_AT_artificial); + if (ATy.isObjectPointer()) + addFlag(Arg, dwarf::DW_AT_object_pointer); SPDie->addChild(Arg); } } @@ -1348,6 +1350,8 @@ DIE *CompileUnit::constructVariableDIE(DbgVariable *DV, bool isScopeAbstract) { if (DV->isArtificial()) addFlag(VariableDie, dwarf::DW_AT_artificial); + if (DV->isObjectPointer()) + addFlag(VariableDie, dwarf::DW_AT_object_pointer); if (isScopeAbstract) { DV->setDIE(VariableDie); |