DebugInfo: Use the SPMap to find the parent CU of inlined functions as they may not...
authorDavid Blaikie <dblaikie@gmail.com>
Wed, 21 May 2014 23:14:12 +0000 (23:14 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Wed, 21 May 2014 23:14:12 +0000 (23:14 +0000)
commit1ea9db2dce3ef5d5e627b5ed3f7c6d95c16a0c37
tree03c9eb73469e32e5484e1c3a35f0aa986144283a
parent8f2394d456c49d9d9b36e0ecf041ea2b193dde9f
DebugInfo: Use the SPMap to find the parent CU of inlined functions as they may not be in the current CU

Committed in r209178 then reverted in r209251 due to LTO breakage,
here's a proper fix for the case of the missing subprogram DIE. The DIEs
were there, just in other compile units. Using the SPMap we can find the
right compile unit to search for and produce cross-unit references to
describe this kind of inlining.

One existing test case needed to be updated because it had a function
that wasn't in the CU's subprogram list, so it didn't appear in the
SPMap.

llvm-svn: 209335
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
llvm/test/CodeGen/Thumb/2010-07-15-debugOrdering.ll
llvm/test/DebugInfo/cross-cu-inlining.ll [new file with mode: 0644]