llvm/docs
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
..
CommandGuide Mimic gcc behaviour with regard to response files. 2009-01-21 13:14:02 +00:00
HistoricalNotes Update a doc, patch contributed by Jim Laskey! 2005-08-02 19:14:25 +00:00
img For PR1067: 2007-02-04 00:17:35 +00:00
tutorial fix some incorrect links. 2008-12-12 04:20:01 +00:00
AliasAnalysis.html Recommit this grammar fix that was backed out along with nocapture. 2008-12-18 02:15:05 +00:00
BitCodeFormat.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
Bugpoint.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
CFEBuildInstrs.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
CMake.html CMake: Added some VC++ specific info to CMake.html. 2008-12-31 14:36:41 +00:00
CodeGenerator.html Add some documentation for address-space-based access to the segment registers. 2009-01-26 02:54:45 +00:00
CodingStandards.html So *this* is where all the trailing whitespace in file header comments come 2009-01-02 16:58:42 +00:00
CommandLine.html Support for multi-valued options in CommandLine 2009-01-16 22:54:19 +00:00
CompilerDriver.html Rename getAnalysisToUpdate to getAnalysisIfAvailable. 2009-01-28 13:14:17 +00:00
CompilerDriverTutorial.html Add a comment to the auto-generated docs. 2008-12-13 17:51:47 +00:00
CompilerWriterInfo.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
DeveloperPolicy.html lex and bison aren't needed to build llvm anymore. 2009-01-02 07:10:51 +00:00
doxygen.cfg.in Upgrade doxygen. 2008-09-18 16:32:28 +00:00
doxygen.css Upgrade in preparation for doxygen 1.4.4. The config file format changed, 2006-05-15 21:36:13 +00:00
doxygen.footer Removed warnings from HTML 4.01 validator: trailing slashes in <br> and <img> 2008-12-11 18:23:24 +00:00
doxygen.header Add a bunch of fine tunings that Reid contributed. Thanks Reid! 2003-12-31 06:47:28 +00:00
doxygen.intro Adjust this so that doxygen doesn't barf on it. 2004-11-29 03:47:37 +00:00
ExceptionHandling.html Clarify a bit. Based on feedback by Talin. 2008-12-29 15:27:32 +00:00
ExtendingLLVM.html Removed warnings from HTML 4.01 validator: trailing slashes in <br> and <img> 2008-12-11 18:23:24 +00:00
FAQ.html Reality-check the FAQ entry for "Can I use LLVM to convert C++ to C?" 2009-01-25 16:04:50 +00:00
GarbageCollection.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
GCCFEBuildInstrs.html * Wrap command line flag in <tt> 2009-01-03 02:35:05 +00:00
GetElementPtr.html Removed warnings from HTML 4.01 validator: trailing slashes in <br> and <img> 2008-12-11 18:23:24 +00:00
GettingStarted.html lex and bison aren't needed to build llvm anymore. 2009-01-02 07:10:51 +00:00
GettingStartedVS.html lex and bison aren't needed to build llvm anymore. 2009-01-02 07:10:51 +00:00
HowToReleaseLLVM.html Removed warnings from HTML 4.01 validator: trailing slashes in <br> and <img> 2008-12-11 18:23:24 +00:00
HowToSubmitABug.html Removed warnings from HTML 4.01 validator: trailing slashes in <br> and <img> 2008-12-11 18:23:24 +00:00
index.html Update the auto-generated llvmc documentation. 2008-12-11 23:24:40 +00:00
LangRef.html Add more documentation mentioning the limitations due to PR2660. 2009-01-24 15:58:40 +00:00
Lexicon.html Fixed HTML validator warning. 2008-12-14 08:01:51 +00:00
LinkTimeOptimization.html * Comply with HTML 4.01 Strict 2008-12-16 03:07:49 +00:00
llvm.css Minimize the width of the notes region: it will end where the text ends, if the 2008-12-29 21:25:09 +00:00
Makefile Add a unified 'generated documentation' target so the web site script has a consistent target to use. 2008-03-31 17:27:57 +00:00
MakefileGuide.html lex and bison aren't needed to build llvm anymore. 2009-01-02 07:10:51 +00:00
Passes.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
ProgrammersManual.html Get rid of the tagging functions and use PointerIntPair. 2009-01-05 16:05:32 +00:00
Projects.html Fix the instructions to work even when PATH does not contain ".". 2009-01-12 21:29:24 +00:00
ReleaseNotes.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
SourceLevelDebugging.html Each input file is encoded as a separate compile unit in LLVM debugging 2009-01-30 18:20:31 +00:00
SystemLibrary.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
TableGenFundamentals.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
TestingGuide.html Global replace of yellow W3C "valid HTML/CSS" icons with blue ones. 2008-12-11 17:34:48 +00:00
UsingLibraries.html Removed warnings from HTML 4.01 validator: trailing slashes in <br> and <img> 2008-12-11 18:23:24 +00:00
WritingAnLLVMBackend.html SDOperand has been renamed to SDValue. SDNode::Val is now 2009-01-28 21:36:46 +00:00
WritingAnLLVMPass.html Rename getAnalysisToUpdate to getAnalysisIfAvailable. 2009-01-28 13:14:17 +00:00