Fix a pair of bugs in the emission of pubname tables:
authorEric Christopher <echristo@gmail.com>
Wed, 16 Oct 2013 01:37:49 +0000 (01:37 +0000)
committerEric Christopher <echristo@gmail.com>
Wed, 16 Oct 2013 01:37:49 +0000 (01:37 +0000)
commita486f55569c584d00cfdde43a8755d68cdb68c4f
tree87168e2f895c3faaa3a761244f66bb717a0cbc4f
parent06957f43f6051901590b318c10b1a0a5c7f898d4
Fix a pair of bugs in the emission of pubname tables:

1) Make sure we emit static member variables by checking
at the end of createGlobalVariableDIE rather than piecemeal
in the function.
(As a note, createGlobalVariableDIE needs rewriting.)

2) Make sure we use the definition rather than declaration DIE
for two things: a) determining linkage for gnu pubnames, and b)
as the address of the DIE for global variables.
(As a note, createGlobalVariableDIE really needs rewriting.)

Adjust the testcase to make sure we're checking the correct DIEs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192761 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
lib/CodeGen/AsmPrinter/DwarfDebug.cpp
test/DebugInfo/X86/gnu-public-names.ll