summaryrefslogtreecommitdiffstats
path: root/llvm/lib/DebugInfo/DWARFCompileUnit.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Move DebugInfo to DebugInfo/DWARF.Zachary Turner2015-01-301-32/+0
| | | | | | | | | | | | | In preparation for adding PDB support to LLVM, this moves the DWARF parsing code to its own subdirectory under DebugInfo, and renames LLVMDebugInfo to LLVMDebugInfoDWARF. This is purely a mechanical / build system change. Differential Revision: http://reviews.llvm.org/D7269 Reviewed by: Eric Christopher llvm-svn: 227586
* [DebugInfo] Move all DWARF headers to the public include directory.Frederic Riss2014-12-191-1/+1
| | | | | | | | | | dsymutil needs access to DWARF specific inforamtion, the small DIContext wrapper isn't sufficient. Other DWARF consumers might want to use it too (I'm looking at you lldb). Differential Revision: http://reviews.llvm.org/D6694 llvm-svn: 224594
* Exract most of DWARFCompileUnit into a new DWARFUnit to prepare for the ↵David Blaikie2013-09-231-366/+9
| | | | | | coming DWARFTypeUnit. llvm-svn: 191233
* Add support for DebugFission to DWARF parserAlexey Samsonov2013-08-271-17/+128
| | | | | | | | | | | | | | | | | | | Summary: 1) Make llvm-symbolizer properly symbolize files with split debug info (by using stanalone .dwo files). 2) Make DWARFCompileUnit parse and store corresponding .dwo file, if necessary. 3) Make bits of DWARF parsing more CompileUnit-oriented. Reviewers: echristo Reviewed By: echristo CC: bkramer, llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1164 llvm-svn: 189329
* Store compile unit corresponding to each chain of inlined debug info ↵Alexey Samsonov2013-08-061-2/+2
| | | | | | entries. No functionality change. llvm-svn: 187792
* DebugInfo: Factor out parsing compile unit DIEs to a separate function. ↵Alexey Samsonov2013-07-151-54/+60
| | | | | | | | Improve code style and comments. No functionality change. llvm-svn: 186315
* Create a stub for DWARF parser unittestsAlexey Samsonov2013-04-171-1/+1
| | | | | | | Moves one DWARF-specific header to include/llvm/DebugInfo from lib/. Add a short unittest for r179095. llvm-svn: 179678
* DWARF parser: Fix DWARF-2/3 incompatibility: size of DW_FORM_ref_addr is the ↵Alexey Samsonov2013-04-091-1/+1
| | | | | | same as DW_FORM_addr in DWARF2, and is 4/8 bytes on 32/64-bit DWARF starting from DWARF3. Adding a test for this is a huge pain - generating and uploading pre-built binary with DWARF3 debug info is way too ugly, and writing fine-grained unittests for DebugInfo is impossible, as it doesn't expose any headers in include/llvm. That said, I'm going to choose the second approach and submit the patch exposing DebugInfo headers for review soon enough. llvm-svn: 179095
* Add a space to the end of the line so we don't get "itsbounds" in output.Eric Christopher2013-01-041-1/+1
| | | | llvm-svn: 171487
* Extend the dumping infrastructure to deal with additionalEric Christopher2013-01-021-8/+5
| | | | | | | | | | | | sections for debug info. These are some of the dwo sections from the DWARF5 split debug info proposal. Update the fission-cu.ll testcase to show what we should be able to dump more of now. Work in progress: Ultimately the relocations will be gone for the dwo section and the strings will be a different form (as well as the rest of the sections will be included). llvm-svn: 171428
* Add support for fetching inlining context (stack of source code locations)Alexey Samsonov2012-09-041-5/+23
| | | | | | | | | | | by instruction address from DWARF. Add --inlining flag to llvm-dwarfdump to demonstrate and test this functionality, so that "llvm-dwarfdump --inlining --address=0x..." now works much like "addr2line -i 0x...", provided that the binary has debug info (Clang's -gline-tables-only *is* enough). llvm-svn: 163128
* Formatting cleanup.Eric Christopher2012-08-231-7/+7
| | | | llvm-svn: 162499
* Add an assert here in case parsing gave us a NULL compile unit.Eric Christopher2012-08-231-1/+3
| | | | llvm-svn: 162498
* Tidy.Eric Christopher2012-08-231-3/+3
| | | | llvm-svn: 162421
* DebugInfo library: add support for fetching absolute paths to source filesAlexey Samsonov2012-07-191-0/+7
| | | | | | | | (instead of basenames) from DWARF. Use this behavior in llvm-dwarfdump tool. Reviewed by Benjamin Kramer. llvm-svn: 160496
* Fix a bug in DebugInfo lib, extend a comment for one of the methodsAlexey Samsonov2012-07-041-2/+2
| | | | llvm-svn: 159707
* This patch extends the libLLVMDebugInfo which contains a minimalistic DWARF ↵Alexey Samsonov2012-07-021-4/+14
| | | | | | | | | | parser: 1) DIContext is now able to return function name for a given instruction address (besides file/line info). 2) llvm-dwarfdump accepts flag --functions that prints the function name (if address is specified by --address flag). 3) test case that checks the basic functionality of llvm-dwarfdump added llvm-svn: 159512
* DWARF: Print line tables per compile unit, so they get the right address size.Benjamin Kramer2011-09-151-2/+1
| | | | llvm-svn: 139808
* DWARF: Generate the address lookup table from the DIE tree if .debug_aranges ↵Benjamin Kramer2011-09-141-0/+37
| | | | | | | | is not available. Ported from LLDB. llvm-svn: 139732
* DebugInfo: Don't print DIEs multiple times.Benjamin Kramer2011-09-141-2/+1
| | | | llvm-svn: 139671
* Sketch out a DWARF parser.Benjamin Kramer2011-09-131-0/+203
This introduces a new library to LLVM: libDebugInfo. It will provide debug information parsing to LLVM. Much of the design and some of the code is taken from the LLDB project. It also contains an llvm-dwarfdump tool that can dump the abbrevs and DIEs from an object file. It can be used to write tests for DWARF input and output easily. llvm-svn: 139627
OpenPOWER on IntegriCloud