llvm-6502/lib/CodeGen/AsmPrinter
David Blaikie df29a10359 DebugInfo: Fix missing inlined_subroutines caused by r208748.
The check in DwarfDebug::constructScopeDIE was meant to consider inlined
subroutines as any non-top-level scope that was a subprogram. Instead of
checking "not top level scope" it was checking if the /subprogram's/
scope was non-top-level.

Fix this and beef up a test case to demonstrate some of the missing
inlined_subroutines are no longer missing.

In the course of fixing this I also found that r208748 (with this fix)
found one /extra/ inlined_subroutine in concrete_out_of_line.ll due to
two inlined_subroutines having the same inlinedAt location. The previous
implementation was collapsing these into a single inlined subroutine.

I'm not sure what the original code was that created this .ll file so
I'm not sure if this actually happens in practice today. Since we
deliberately include column information to disambiguate two calls on the
same line, that may've addressed this bug in the frontend, but it's good
to know that workaround isn't necessary for this particular case
anymore.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209165 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-19 21:54:31 +00:00
..
AddressPool.cpp
AddressPool.h
ARMException.cpp Fix ARM EHABI when function has landingpad and nounwind. 2014-05-14 16:38:30 +00:00
AsmPrinter.cpp Delete getAliasedGlobal. 2014-05-16 22:37:03 +00:00
AsmPrinterDwarf.cpp
AsmPrinterHandler.h
AsmPrinterInlineAsm.cpp
ByteStreamer.h
CMakeLists.txt
DbgValueHistoryCalculator.cpp Convert more loops to range-based equivalents 2014-04-30 22:17:38 +00:00
DbgValueHistoryCalculator.h Use a single data structure to store all user variables in DwarfDebug 2014-04-30 23:02:40 +00:00
DebugLocEntry.h
DebugLocList.h
DIE.cpp
DIE.h
DIEHash.cpp
DIEHash.h
DwarfAccelTable.cpp
DwarfAccelTable.h
DwarfCFIException.cpp
DwarfDebug.cpp DebugInfo: Fix missing inlined_subroutines caused by r208748. 2014-05-19 21:54:31 +00:00
DwarfDebug.h DwarfDebug: Refactor AT_ranges/AT_high_pc+AT_low_pc emission into helper function. 2014-05-16 16:42:40 +00:00
DwarfException.cpp Convert more loops to range-based equivalents 2014-04-30 22:17:38 +00:00
DwarfException.h
DwarfFile.cpp
DwarfFile.h
DwarfStringPool.cpp
DwarfStringPool.h
DwarfUnit.cpp DebugInfo: Handle emitting constants of C++ unicode character type. 2014-05-16 21:53:09 +00:00
DwarfUnit.h DebugInfo: Follow up to r208930, comment usage of 'using' to bring in base class overload. 2014-05-15 23:29:53 +00:00
ErlangGCPrinter.cpp
LLVMBuild.txt
Makefile
OcamlGCPrinter.cpp
Win64Exception.cpp
WinCodeViewLineTables.cpp Convert more loops to range-based equivalents 2014-04-30 22:17:38 +00:00
WinCodeViewLineTables.h