aboutsummaryrefslogtreecommitdiffstats
path: root/lib/DebugInfo
Commit message (Collapse)AuthorAgeFilesLines
* More dead code removal (using -Wunreachable-code)David Blaikie2012-01-201-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148578 91177308-0d34-0410-b5e6-96231b3b80d8
* Unweaken vtables as per ↵David Blaikie2011-12-202-0/+3
| | | | | | http://llvm.org/docs/CodingStandards.html#ll_virtual_anch git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146960 91177308-0d34-0410-b5e6-96231b3b80d8
* LLVMBuild: Remove trailing newline, which irked me.Daniel Dunbar2011-12-121-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146409 91177308-0d34-0410-b5e6-96231b3b80d8
* build/CMake: Finish removal of add_llvm_library_dependencies.Daniel Dunbar2011-11-291-4/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145420 91177308-0d34-0410-b5e6-96231b3b80d8
* Audited all the format strings in libDebugInfo and fixed those that didn't ↵Benjamin Kramer2011-11-054-13/+14
| | | | | | match the types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143814 91177308-0d34-0410-b5e6-96231b3b80d8
* Reduce the offsets in DwarfDebugInfoEntry to 32 bit, they're printed with %x andBenjamin Kramer2011-11-052-3/+3
| | | | | | | | that breaks on big-endian machines. I have to clean up the 32/64 bit confusion in libDebugInfo some day. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143812 91177308-0d34-0410-b5e6-96231b3b80d8
* Add more PRI.64 macros for MSVC and use them throughout the codebase.Benjamin Kramer2011-11-054-9/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143799 91177308-0d34-0410-b5e6-96231b3b80d8
* build: Add initial cut at LLVMBuild.txt files.Daniel Dunbar2011-11-031-0/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143634 91177308-0d34-0410-b5e6-96231b3b80d8
* lib/DebugInfo/DWARFDebugLine.cpp: De-Unicode-ify.NAKAMURA Takumi2011-10-081-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141484 91177308-0d34-0410-b5e6-96231b3b80d8
* WhitespaceNAKAMURA Takumi2011-10-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141483 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: avoid unnecessary map lookups.Benjamin Kramer2011-09-211-6/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140260 91177308-0d34-0410-b5e6-96231b3b80d8
* Namespacify.Benjamin Kramer2011-09-161-8/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139892 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Reset the state after parsing a line table prologue and remove an ↵Benjamin Kramer2011-09-153-5/+5
| | | | | | unnecessary lookup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139859 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Don't crash when looking up an invalid address.Benjamin Kramer2011-09-151-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139846 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Put all the pieces we have together and provide a single accessor to ↵Benjamin Kramer2011-09-153-1/+57
| | | | | | DIContext that provides line information when given an address. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139836 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Remove accessors that parse the whole line table section in one go, ↵Benjamin Kramer2011-09-154-58/+39
| | | | | | | | this can't possibly work. The address size is specified by the compile unit associated with a line table, there is no global address size. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139835 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Print line tables per compile unit, so they get the right address size.Benjamin Kramer2011-09-153-5/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139808 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: wire up .debug_str dumping.Benjamin Kramer2011-09-154-17/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139799 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Make DIE printing more bulletproof.Benjamin Kramer2011-09-151-5/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139786 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Print the number for unknown abbrev fields.Benjamin Kramer2011-09-151-5/+18
| | | | | | Thanks Nick! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139778 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Fail gracefully when encountering unknown values in an abbrev.Benjamin Kramer2011-09-151-4/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139777 91177308-0d34-0410-b5e6-96231b3b80d8
* Give structs with virtual methods a virtual destructor.Nick Lewycky2011-09-152-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139776 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Silence GCC -Wsign-compare warning.Benjamin Kramer2011-09-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139775 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Fix indentation.Benjamin Kramer2011-09-152-82/+81
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139774 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Include <algorithm> explicitly.Benjamin Kramer2011-09-151-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139773 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Add basic support for line tables.Benjamin Kramer2011-09-155-0/+707
| | | | | | The llvm-dwarfdump output isn't very verbose yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139771 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Generate the address lookup table from the DIE tree if .debug_aranges ↵Benjamin Kramer2011-09-147-1/+87
| | | | | | | | is not available. Ported from LLDB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139732 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Reorder fields to reduce padding.Benjamin Kramer2011-09-141-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139712 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Improve indentation of DIE dumping so it's easier to see the structure.Benjamin Kramer2011-09-141-8/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139705 91177308-0d34-0410-b5e6-96231b3b80d8
* llvm-dwarfdump: Make the "is debug info section" heuristic stricter so it ↵Benjamin Kramer2011-09-141-0/+7
| | | | | | | | | | doesn't accidentaly picks up the wrong section. Also add some validation code to the aranges section parser. Fixes PR10926. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139701 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't rely in <algorithm> being pulled in transitively.Benjamin Kramer2011-09-141-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139684 91177308-0d34-0410-b5e6-96231b3b80d8
* DWARF: Port support for parsing .debug_aranges section from LLDB and wire it ↵Benjamin Kramer2011-09-147-2/+551
| | | | | | | | | up to llvm-dwarfdump. This is only one half of it, the part that caches address ranges from the DIEs when .debug_aranges is not available will be ported soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139680 91177308-0d34-0410-b5e6-96231b3b80d8
* DebugInfo: Don't print DIEs multiple times.Benjamin Kramer2011-09-143-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139671 91177308-0d34-0410-b5e6-96231b3b80d8
* Style & indentation tweaks.Benjamin Kramer2011-09-137-211/+201
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139646 91177308-0d34-0410-b5e6-96231b3b80d8
* I know copy&paste!Benjamin Kramer2011-09-131-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139628 91177308-0d34-0410-b5e6-96231b3b80d8
* Sketch out a DWARF parser.Benjamin Kramer2011-09-1316-0/+1882
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139627 91177308-0d34-0410-b5e6-96231b3b80d8