llvm-6502/test
Devang Patel dd9db66882 Each input file is encoded as a separate compile unit in LLVM debugging
information output. However, many target specific tool chains prefer to encode
only one compile unit in an object file. In this situation, the LLVM code
generator will include  debugging information entities in the compile unit 
that is marked as main compile unit. The code generator accepts maximum one main
compile unit per module. If a module does not contain any main compile unit 
then the code generator will emit multiple compile units in the output object 
file.

[Part 1]

Update DebugInfo APIs to accept optional boolean value while creating DICompileUnit  to mark the unit as "main" unit. By defaults all units are considered  non-main.  Update SourceLevelDebugging.html to document "main" compile unit.

Update DebugInfo APIs to not accept and encode separate source file/directory entries while creating various llvm.dbg.* entities. There was a recent, yet to be documented, change to include this additional information so no documentation changes are required here.

Update DwarfDebug to handle "main" compile unit. If "main" compile unit is seen then all DIEs are inserted into "main" compile unit. All other compile units are used to find source location for llvm.dbg.* values. If there is not any "main" compile unit then create unique compile unit DIEs for each llvm.dbg.compile_unit.

[Part 2]

Create separate llvm.dbg.compile_unit for each input file. Mark compile unit create for main_input_filename as "main" compile unit. Use appropriate compile unit, based on source location information collected from the tree node, while creating llvm.dbg.* values using DebugInfo APIs.

---

This is Part 1.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63400 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-30 18:20:31 +00:00
..
Analysis Wind SCEV back in time, to Nov 18th. This 'fixes' PR3275, PR3294, PR3295, 2009-01-13 09:18:58 +00:00
Archive
Assembler Add the private linkage. 2009-01-15 20:18:42 +00:00
Bindings/Ocaml [PR2886] Ignore stderr from ocamlc since it prints unresolvable warnings on some platforms. 2008-10-22 12:41:54 +00:00
Bitcode Eliminate x86.sse2.punpckh.qdq and x86.sse2.punpckl.qdq. 2008-05-24 02:56:30 +00:00
BugPoint this is unneeded now. 2008-06-16 04:25:39 +00:00
CodeGen XFAIL this test. It only worked before because of a bug in the spill point selection code. Not deleting because 2009-01-29 22:27:56 +00:00
DebugInfo Each input file is encoded as a separate compile unit in LLVM debugging 2009-01-30 18:20:31 +00:00
ExecutionEngine This is case is to uncover the bug in IntrinsicLowering.cpp, 2009-01-30 08:59:51 +00:00
Feature Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
FrontendAda Teach constant folding that an inttoptr of a 2008-08-13 20:20:35 +00:00
FrontendC Add a always_inline test case. 2009-01-29 09:31:54 +00:00
FrontendC++ Remove no-longer relevant comment. Pointed out 2009-01-22 15:37:29 +00:00
FrontendFortran Testcase for recent llvm-gcc fix 2008-11-03 14:43:31 +00:00
FrontendObjC Testcase for 6522054. 2009-01-26 23:22:19 +00:00
FrontendObjC++ This is an objective-c test, not an objective-c++ one. 2008-10-06 18:42:48 +00:00
Integer alignment of 0 is not valid. 2009-01-05 08:14:35 +00:00
lib Fix make check on Solaris 10/x86: the default grep is not GNU grep, same for as. 2008-10-21 17:21:32 +00:00
Linker Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
LLVMC Add three new option properties. 2009-01-28 03:47:20 +00:00
Other Testcase for PR2894. 2008-10-15 22:34:34 +00:00
Scripts simplify shell syntax to work better on solaris, patch by 2008-06-25 16:03:42 +00:00
TableGen Fun x86 encoding tricks: when adding an immediate value of 128, 2008-10-17 01:33:43 +00:00
Transforms Fix some issues with volatility, move "CanConvertToScalar" check 2009-01-28 20:16:43 +00:00
Verifier Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
Makefile * Quoted the executable 'runtest' to emphasize the binary needed; 2009-01-01 20:26:05 +00:00
Makefile.tests
TestRunner.sh Fix a bashism in TestRunner.sh. 2008-07-28 18:41:03 +00:00