aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp')
-rw-r--r--lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp4
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);