summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDavid Blaikie <dblaikie@gmail.com>2015-04-14 18:08:25 +0000
committerDavid Blaikie <dblaikie@gmail.com>2015-04-14 18:08:25 +0000
commit877354a2f73393af27f76c4dd4550b4ff839472f (patch)
treeb4e448c9e06ca99e048cb4e1c2fcf261bafb856d /llvm/lib
parent9d6ca7e2725f717f0f97b0f49348462dff7750ea (diff)
downloadbcm5719-llvm-877354a2f73393af27f76c4dd4550b4ff839472f.tar.gz
bcm5719-llvm-877354a2f73393af27f76c4dd4550b4ff839472f.zip
DebugInfo: Pubnames: Do not include variable declarations in pubnames
This causes badness for GDB which expects to find a definition in any compile_unit that has an entry for the variable in its pubnames. llvm-svn: 234915
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
index 555d40bb8c2..d3097a16cc5 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
@@ -137,6 +137,8 @@ DIE *DwarfCompileUnit::getOrCreateGlobalVariableDIE(DIGlobalVariable GV) {
if (!GV->isDefinition())
addFlag(*VariableDIE, dwarf::DW_AT_declaration);
+ else
+ addGlobalName(GV->getName(), *VariableDIE, DeclContext);
// Add location.
bool addToAccelTable = false;
@@ -202,7 +204,6 @@ DIE *DwarfCompileUnit::getOrCreateGlobalVariableDIE(DIGlobalVariable GV) {
DD->addAccelName(GV->getLinkageName(), *VariableDIE);
}
- addGlobalName(GV->getName(), *VariableDIE, DeclContext);
return VariableDIE;
}
OpenPOWER on IntegriCloud