Eric Christopher
34ea33680f
Untabify.
...
llvm-svn: 181247
2013-05-06 21:19:41 +00:00
Eric Christopher
92f3c0b49c
Don't emit .dwo sections unless they exist.
...
llvm-svn: 181224
2013-05-06 17:50:42 +00:00
Rafael Espindola
1e48387962
Clarify getRelocationAddress x getRelocationOffset a bit.
...
getRelocationAddress is for dynamic libraries and executables,
getRelocationOffset for relocatable objects.
Mark the getRelocationAddress of COFF and MachO as not implemented yet. Add a
test of ELF's. llvm-readobj -r now prints the same values as readelf -r.
llvm-svn: 180259
2013-04-25 12:28:45 +00:00
Alexey Samsonov
068fc8ae6e
Use zlib to uncompress debug sections in DWARF parser.
...
This makes llvm-dwarfdump and llvm-symbolizer understand
debug info sections compressed by ld.gold linker.
llvm-svn: 180088
2013-04-23 10:17:34 +00:00
Eric Christopher
845c2ca78c
Remove variable store that is never read.
...
llvm-svn: 180013
2013-04-22 13:46:33 +00:00
Alexey Samsonov
3d0e3ed0b6
Use StringSwitch instead of long chain of if-else. No functionality change.
...
llvm-svn: 179682
2013-04-17 14:27:04 +00:00
Alexey Samsonov
045c6c5b40
Create a stub for DWARF parser unittests
...
Moves one DWARF-specific header to include/llvm/DebugInfo from lib/.
Add a short unittest for r179095.
llvm-svn: 179678
2013-04-17 08:29:02 +00:00
Benjamin Kramer
c86fdf12e8
Rename the C function to create a SLPVectorizerPass to something sane and expose it in the header file.
...
llvm-svn: 179272
2013-04-11 11:36:36 +00:00
Alexey Samsonov
d60859b21e
DWARF parser: Fix DWARF-2/3 incompatibility: size of DW_FORM_ref_addr is the 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
2013-04-09 14:09:42 +00:00
Alexey Samsonov
c03f2ee0ae
DWARF parser: remove duplicated code and fix code style in DIE extractors.
...
llvm-svn: 179023
2013-04-08 14:37:16 +00:00
Eric Christopher
55863befd1
DW_FORM_sec_offset should be a relocation on platforms that use
...
a relocation across sections. Do this for DW_AT_stmt list in the
skeleton CU and check the relocations in the debug_info section.
Add a FIXME for multiple CUs.
llvm-svn: 178969
2013-04-07 03:43:09 +00:00
Matt Arsenault
4ab769f4b3
Fix missing std::. Not sure how this compiles for anyone else.
...
llvm-svn: 177620
2013-03-21 00:57:21 +00:00
Rafael Espindola
43e553de45
xlC doesn't like Header being both a type and a member variable. Rename the
...
member variable.
Patch by Kai <kai@redstar.de>
llvm-svn: 177575
2013-03-20 21:03:41 +00:00
Eli Bendersky
8e352e30fd
Code cleanup: pass Offset by pointer to parseInstruction to more explicitly
...
convey that it's a INOUT argument.
Also, if parsing of entry instructions fails, don't push the entry.
llvm-svn: 175847
2013-02-22 00:50:48 +00:00
Eli Bendersky
705085da37
Previously, parsing capability of the .debug_frame section was added
...
to lib/DebugInfo, with dumping in llvm-dwarfdump. This patch adds
initial ability to parse and dump CFA instructions contained in
entries.
To keep it manageable, the patch omits some more advanced capabilities
(accounted in TODOs):
* Parsing of instructions with BLOCK arguments (expression lists)
* Dumping of actual instruction arguments (currently only names are
dumped). This is quite tricky since the dumper has to effectively
"interpret" the instructions.
llvm-svn: 175820
2013-02-21 22:53:19 +00:00
Benjamin Kramer
6ecb1e78a9
Make helpers static. Add missing include so LLVMInitializeObjCARCOpts gets C linkage.
...
llvm-svn: 175264
2013-02-15 12:30:38 +00:00
Krzysztof Parzyszek
97438dc75e
Add support for the pubnames section to llvm-dwarfdump.
...
llvm-svn: 174976
2013-02-12 16:20:28 +00:00
David Tweed
a6016e4351
The patch to fix some issues in r174543 fixed the lines failing the test, but missed a couple
...
of lines which weren't being explicitly looked at and were printing incorrect results. These
values clearly must lie within 32 bits, so the casts are definitely safe.
llvm-svn: 174717
2013-02-08 16:35:10 +00:00
NAKAMURA Takumi
14727d7c68
FDE::dumpHeader(): Forgot to fix one more formatting, ... take two!
...
Excuse me, I could not test it locally.
llvm-svn: 174614
2013-02-07 14:54:42 +00:00
NAKAMURA Takumi
94651f9da9
FDE::dumpHeader(): Forgot to fix one more formatting. It affected bigendian hosts.
...
llvm-svn: 174602
2013-02-07 10:57:42 +00:00
NAKAMURA Takumi
56ac51a92e
DWARFDebugFrame.cpp: Fix formatting on i686 hosts.
...
FIXME: Are they really truncated to i32 from i64 unconditionally?
llvm-svn: 174574
2013-02-07 02:02:27 +00:00
Eli Bendersky
582320603b
Add some comments to new frame entries
...
llvm-svn: 174515
2013-02-06 16:20:31 +00:00
Eli Bendersky
4e6d811eef
Failing builds because a private class member is not being used after
...
initialization is one of the reasons I consider -werror to be shoddy.
llvm-svn: 174485
2013-02-06 05:37:46 +00:00
Eli Bendersky
0b04cb0f0e
Add virtual desctructor to FrameEntry to avoid error on delete-non-virtual-dtor
...
llvm-svn: 174483
2013-02-06 03:08:02 +00:00
Eli Bendersky
1aa265d12b
Fix some formatting & add comments, following Eric's review
...
llvm-svn: 174473
2013-02-06 00:20:38 +00:00
Eli Bendersky
aece14cadd
Add missing file to CMake list
...
llvm-svn: 174465
2013-02-05 23:37:18 +00:00
Eli Bendersky
fd08bc195b
Initial support for DWARF CFI parsing and dumping in LLVM
...
llvm-svn: 174463
2013-02-05 23:30:58 +00:00
NAKAMURA Takumi
4b86cdbb4f
DWARFDebugLine.cpp: Fix true path. Did you forget "return true" here?
...
llvm-svn: 173552
2013-01-26 01:45:06 +00:00
Andrew Kaylor
9a8ff813f3
Add DIContext::getLineInfoForAddressRange() function and test. This function allows a caller to obtain a table of line information for a function using the function's address and size.
...
llvm-svn: 173537
2013-01-26 00:28:05 +00:00
Nadav Rotem
81d6853638
Fix a warning in the new DWARFheader. Add a new line at the end of the file.
...
llvm-svn: 173518
2013-01-25 22:57:05 +00:00
Andrew Kaylor
d55d7019fc
Add support for applying in-memory relocations to the .debug_line section and, in the case of ELF files, using symbol addresses when available for relocations to the .debug_info section. Also extending the llvm-rtdyld tool to add the ability to dump line number information for testing purposes.
...
llvm-svn: 173517
2013-01-25 22:50:58 +00:00
Eli Bendersky
7a94daa170
Add command-line flags for DWARF dumping.
...
Flags for dumping specific DWARF sections added in lib/DebugInfo and
llvm-dwarfdump.
llvm-svn: 173480
2013-01-25 20:26:43 +00:00
Eric Christopher
4c7765f166
Fix the assembly and dissassembly of DW_FORM_sec_offset. Found this by
...
changing both the string of the dwo_name to be correct and the type of
the statement list.
Testcases all around.
llvm-svn: 172699
2013-01-17 03:00:04 +00:00
Eric Christopher
1826617133
Add the DW_AT_GNU_addr_base for the skeleton cu. Add support for
...
emitting the dwarf32 version of DW_FORM_sec_offset and correct
disassembler support.
llvm-svn: 172698
2013-01-17 02:59:59 +00:00
Eric Christopher
962c9089d9
Split address information for DWARF5 split dwarf proposal. This involves
...
using the DW_FORM_GNU_addr_index and a separate .debug_addr section which
stays in the executable and is fully linked.
Sneak in two other small changes:
a) Print out the debug_str_offsets.dwo section.
b) Change form we're expecting the entries in the debug_str_offsets.dwo
section to take from ULEB128 to U32.
Add tests for all of this in the fission-cu.ll test.
llvm-svn: 172578
2013-01-15 23:56:56 +00:00
NAKAMURA Takumi
d7678c6af5
[Object, DebugInfo] Make DWARFContext BE-aware.
...
test/DebugInfo/member-pointers.ll would not fail in targetting BE any more.
llvm-svn: 171943
2013-01-09 02:45:05 +00:00
Eric Christopher
b2120fd465
Whitespace and 80-col.
...
llvm-svn: 171804
2013-01-07 22:40:48 +00:00
Eric Christopher
2cbd5767ad
Add support for separating strings for the split debug info DWARF5
...
proposal. This leaves the strings in the skeleton die as strp,
but in all dwo files they're accessed now via DW_FORM_GNU_str_index.
Add support for dumping these sections and modify the fission-cu.ll
testcase to have the correct strings and form. Fix a small bug
in the fixed form sizes routine that involved out of array accesses
for the table and add a FIXME in the extractFast routine to fix
this up.
llvm-svn: 171779
2013-01-07 19:32:41 +00:00
Eric Christopher
7f5870c98c
Update comment.
...
llvm-svn: 171689
2013-01-07 03:27:58 +00:00
Eric Christopher
7d1d713f59
Add a space to the end of the line so we don't get "itsbounds" in output.
...
llvm-svn: 171487
2013-01-04 18:30:36 +00:00
Eric Christopher
da4b2195fc
Extend the dumping infrastructure to deal with additional
...
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
2013-01-02 23:52:13 +00:00
Eric Christopher
5a6acfa4c8
Right now all of the relocations are 32-bit dwarf, and the relocation
...
information doesn't return an addend for Rel relocations. Go ahead
and use this information to fix relocation handling inside dwarfdump
for 32-bit ELF REL.
llvm-svn: 171126
2012-12-27 01:07:07 +00:00
Rafael Espindola
73bf9fa7ba
Don't skip __DWARF,
...
Now that we don't merge section and segment names, we don't need to skip the
segment name to get to the section name.
llvm-svn: 170839
2012-12-21 04:08:03 +00:00
Bill Wendling
3d7b0b8ac7
Rename the 'Attributes' class to 'Attribute'. It's going to represent a single attribute in the future.
...
llvm-svn: 170502
2012-12-19 07:18:57 +00:00
Chandler Carruth
802d755533
Sort includes for all of the .h files under the 'lib' tree. These were
...
missed in the first pass because the script didn't yet handle include
guards.
Note that the script is now able to handle all of these headers without
manual edits. =]
llvm-svn: 169224
2012-12-04 07:12:27 +00:00
Eric Christopher
710c374dfe
The section is .debug_line.
...
llvm-svn: 168666
2012-11-27 01:40:36 +00:00
Eric Christopher
59c53c2e08
Add some basic support for the fission addr forms to DebugInfo.
...
llvm-svn: 168223
2012-11-16 23:44:11 +00:00
Alexey Samsonov
a1694c1aaf
[DebugInfo] Generate address ranges for compile units even if .debug_aranges is present: it is often the case that .debug_aranges section contains ranges only for a small subset of compile units. Test cases will be added in separate commits.
...
llvm-svn: 168144
2012-11-16 08:36:25 +00:00
Eric Christopher
7370b55262
Rewrite DIContext interface to take an object. Update all callers.
...
llvm-svn: 167757
2012-11-12 21:40:38 +00:00
Alexey Samsonov
9cb13d59b7
Fixup for r167558: Store raw pointer (instead of reference) to RelocMap in DIContext. This is needed to prevent crashes because of dangling reference if the clients don't provide RelocMap to DIContext constructor.
...
llvm-svn: 167728
2012-11-12 14:25:36 +00:00
Eric Christopher
7c678de861
Add a relocation visitor to lib object. This works via caching relocated
...
values in a map that can be passed to consumers. Add a testcase that
ensures this works for llvm-dwarfdump.
llvm-svn: 167558
2012-11-07 23:22:07 +00:00
Eric Christopher
206cf6487c
Reformat and 80-column this. It's not strictly conforming
...
yet, but it's better.
llvm-svn: 167053
2012-10-30 21:36:43 +00:00
Eric Christopher
494109b055
Use a typedef to reduce some typing and reformat code accordingly.
...
llvm-svn: 166077
2012-10-16 23:46:25 +00:00
Eric Christopher
02509481f6
Variable name cleanup.
...
llvm-svn: 166076
2012-10-16 23:46:23 +00:00
Craig Topper
b1d83e8c72
Mark unimplemented copy constructors and copy assignment operators as LLVM_DELETED_FUNCTION.
...
llvm-svn: 164090
2012-09-18 02:01:41 +00:00
Roman Divacky
ad06cee239
Stop casting away const qualifier needlessly.
...
llvm-svn: 163258
2012-09-05 22:26:57 +00:00
Roman Divacky
09c8a3dde5
Remove unused typedefs gcc4.8 warns about.
...
llvm-svn: 163225
2012-09-05 17:55:46 +00:00
Alexey Samsonov
c942e6b781
Add support for fetching inlining context (stack of source code locations)
...
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
2012-09-04 08:12:33 +00:00
Alexey Samsonov
45be793e3a
Refactor fetching file/line info from DWARFContext to simplify the
...
code and allow better code reuse. Make the code a bit more conforming
to LLVM code style.
No functionality change.
llvm-svn: 162895
2012-08-30 07:49:50 +00:00
Marshall Clow
ef271cce0a
Fix compile error when building with C++11 - clang thinks that PRIx64 is a user-defined suffix or something
...
llvm-svn: 162704
2012-08-27 22:53:35 +00:00
NAKAMURA Takumi
37338a8352
DWARFDebugRangeList.cpp: Use PRIx64 for uint64_t as format string.
...
llvm-svn: 162665
2012-08-27 10:10:10 +00:00
Alexey Samsonov
b4c95daf86
[DebugInfo] fixup for r162657: update CMakeLists.txt
...
llvm-svn: 162659
2012-08-27 07:24:43 +00:00
Alexey Samsonov
034e57a297
Add basic support for .debug_ranges section to LLVM's DebugInfo library.
...
This section (introduced in DWARF-3) is used to define instruction address
ranges for functions that are not contiguous and can't be described
by low_pc/high_pc attributes (this is the usual case for inlined subroutines).
The patch is the first step to support fetching complete inlining info from DWARF.
Reviewed by Benjamin Kramer.
llvm-svn: 162657
2012-08-27 07:17:47 +00:00
Eric Christopher
d999bb7ff4
Add support for some missing DW_FORM_*.
...
TODO: Fix code duplication and coding style.
llvm-svn: 162525
2012-08-24 01:14:23 +00:00
Eric Christopher
67942acc6b
Formatting.
...
llvm-svn: 162524
2012-08-24 01:14:21 +00:00
Eric Christopher
20b897b693
Formatting cleanup.
...
llvm-svn: 162499
2012-08-23 23:26:57 +00:00
Eric Christopher
9142ea7bec
Add an assert here in case parsing gave us a NULL compile unit.
...
llvm-svn: 162498
2012-08-23 23:21:11 +00:00
Eric Christopher
c2ce00418c
80-col.
...
llvm-svn: 162422
2012-08-23 00:52:51 +00:00
Eric Christopher
0ef6ebc7e4
Tidy.
...
llvm-svn: 162421
2012-08-23 00:52:49 +00:00
Alexey Samsonov
947228c4f7
Fix the representation of debug line table in DebugInfo LLVM library,
...
and "instruction address -> file/line" lookup.
Instead of plain collection of rows, debug line table for compilation unit is now
treated as the number of row ranges, describing sequences (series of contiguous machine
instructions). The sequences are not always listed in the order of increasing
address, so previously used std::lower_bound() sometimes produced wrong results.
Now the instruction address lookup consists of two stages: finding the correct
sequence, and searching for address in range of rows for this sequence.
llvm-svn: 161414
2012-08-07 11:46:57 +00:00
Alexey Samsonov
e16e16add6
DebugInfo library: add support for fetching absolute paths to source files
...
(instead of basenames) from DWARF. Use this behavior in llvm-dwarfdump tool.
Reviewed by Benjamin Kramer.
llvm-svn: 160496
2012-07-19 07:03:58 +00:00
Alexey Samsonov
b604ff2a07
Improve behavior of DebugInfoEntryMinimal::getSubprogramName() introduced in r159512.
...
To fetch a subprogram name we should not only inspect the DIE for this subprogram, but optionally inspect
its specification, or its abstract origin (even if there is no inlining), or even specification of an abstract origin.
Reviewed by Benjamin Kramer.
llvm-svn: 160365
2012-07-17 15:28:35 +00:00
Alexey Samsonov
5cbbf4ca57
Fix a bug in DebugInfo lib, extend a comment for one of the methods
...
llvm-svn: 159707
2012-07-04 09:42:54 +00:00
Alexey Samsonov
f4462fa3ca
This patch extends the libLLVMDebugInfo which contains a minimalistic DWARF 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
2012-07-02 05:54:45 +00:00
Benjamin Kramer
379018b2da
Fix a C++11 UDL conflict.
...
Still not fixed in the standard ;)
llvm-svn: 154044
2012-04-04 20:33:56 +00:00
David Blaikie
46a9f016c5
More dead code removal (using -Wunreachable-code)
...
llvm-svn: 148578
2012-01-20 21:51:11 +00:00
David Blaikie
a379b18173
Unweaken vtables as per http://llvm.org/docs/CodingStandards.html#ll_virtual_anch
...
llvm-svn: 146960
2011-12-20 02:50:00 +00:00
Daniel Dunbar
27a7489a03
LLVMBuild: Remove trailing newline, which irked me.
...
llvm-svn: 146409
2011-12-12 19:48:00 +00:00
Daniel Dunbar
539d0a8a09
build/CMake: Finish removal of add_llvm_library_dependencies.
...
llvm-svn: 145420
2011-11-29 19:25:30 +00:00
Benjamin Kramer
79730ad07d
Audited all the format strings in libDebugInfo and fixed those that didn't match the types.
...
llvm-svn: 143814
2011-11-05 16:01:13 +00:00
Benjamin Kramer
f7e0a31f8a
Reduce the offsets in DwarfDebugInfoEntry to 32 bit, they're printed with %x and
...
that breaks on big-endian machines.
I have to clean up the 32/64 bit confusion in libDebugInfo some day.
llvm-svn: 143812
2011-11-05 15:35:00 +00:00
Benjamin Kramer
f3da529028
Add more PRI.64 macros for MSVC and use them throughout the codebase.
...
llvm-svn: 143799
2011-11-05 08:57:40 +00:00
Daniel Dunbar
bf9bba47a1
build: Add initial cut at LLVMBuild.txt files.
...
llvm-svn: 143634
2011-11-03 18:53:17 +00:00
NAKAMURA Takumi
f995985eba
lib/DebugInfo/DWARFDebugLine.cpp: De-Unicode-ify.
...
llvm-svn: 141484
2011-10-08 11:22:47 +00:00
NAKAMURA Takumi
ade616cb57
Whitespace
...
llvm-svn: 141483
2011-10-08 11:22:41 +00:00
Benjamin Kramer
2eeb4e5bd4
DWARF: avoid unnecessary map lookups.
...
llvm-svn: 140260
2011-09-21 17:31:42 +00:00
Benjamin Kramer
67b014b2c2
Namespacify.
...
llvm-svn: 139892
2011-09-16 00:35:06 +00:00
Benjamin Kramer
112ec17e1b
DWARF: Reset the state after parsing a line table prologue and remove an unnecessary lookup.
...
llvm-svn: 139859
2011-09-15 21:59:13 +00:00
Benjamin Kramer
901339d070
DWARF: Don't crash when looking up an invalid address.
...
llvm-svn: 139846
2011-09-15 21:08:54 +00:00
Benjamin Kramer
2602ca67e8
DWARF: Put all the pieces we have together and provide a single accessor to DIContext that provides line information when given an address.
...
llvm-svn: 139836
2011-09-15 20:43:22 +00:00
Benjamin Kramer
679e1752f8
DWARF: Remove accessors that parse the whole line table section in one go, 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.
llvm-svn: 139835
2011-09-15 20:43:18 +00:00
Benjamin Kramer
6dda032003
DWARF: Print line tables per compile unit, so they get the right address size.
...
llvm-svn: 139808
2011-09-15 18:02:20 +00:00
Benjamin Kramer
07d4b1c455
DWARF: wire up .debug_str dumping.
...
llvm-svn: 139799
2011-09-15 16:57:13 +00:00
Benjamin Kramer
9bca64ff2a
DWARF: Make DIE printing more bulletproof.
...
llvm-svn: 139786
2011-09-15 05:43:00 +00:00
Benjamin Kramer
21a5092830
DWARF: Print the number for unknown abbrev fields.
...
Thanks Nick!
llvm-svn: 139778
2011-09-15 04:15:59 +00:00
Benjamin Kramer
4137b6a2b6
DWARF: Fail gracefully when encountering unknown values in an abbrev.
...
llvm-svn: 139777
2011-09-15 04:00:58 +00:00
Nick Lewycky
4d0449204e
Give structs with virtual methods a virtual destructor.
...
llvm-svn: 139776
2011-09-15 03:41:51 +00:00
Benjamin Kramer
21b6f1188f
DWARF: Silence GCC -Wsign-compare warning.
...
llvm-svn: 139775
2011-09-15 03:20:04 +00:00
Benjamin Kramer
123bfbbb73
DWARF: Fix indentation.
...
llvm-svn: 139774
2011-09-15 03:11:09 +00:00
Benjamin Kramer
a57c46aa49
DWARF: Include <algorithm> explicitly.
...
llvm-svn: 139773
2011-09-15 02:19:33 +00:00
Benjamin Kramer
5acab501de
DWARF: Add basic support for line tables.
...
The llvm-dwarfdump output isn't very verbose yet.
llvm-svn: 139771
2011-09-15 02:12:05 +00:00
Benjamin Kramer
3266493603
DWARF: Generate the address lookup table from the DIE tree if .debug_aranges is not available.
...
Ported from LLDB.
llvm-svn: 139732
2011-09-14 20:52:27 +00:00
Benjamin Kramer
a59d118b6c
DWARF: Reorder fields to reduce padding.
...
llvm-svn: 139712
2011-09-14 18:34:47 +00:00
Benjamin Kramer
f915acc613
DWARF: Improve indentation of DIE dumping so it's easier to see the structure.
...
llvm-svn: 139705
2011-09-14 17:54:56 +00:00
Benjamin Kramer
973b5cde7e
llvm-dwarfdump: Make the "is debug info section" heuristic stricter so it doesn't accidentaly picks up the wrong section.
...
Also add some validation code to the aranges section parser.
Fixes PR10926.
llvm-svn: 139701
2011-09-14 17:28:13 +00:00
Benjamin Kramer
a9e7fb678d
Don't rely in <algorithm> being pulled in transitively.
...
llvm-svn: 139684
2011-09-14 01:27:48 +00:00
Benjamin Kramer
a6002fd920
DWARF: Port support for parsing .debug_aranges section from LLDB and wire it 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.
llvm-svn: 139680
2011-09-14 01:09:52 +00:00
Benjamin Kramer
1b2a65ca3a
DebugInfo: Don't print DIEs multiple times.
...
llvm-svn: 139671
2011-09-14 00:15:32 +00:00
Benjamin Kramer
eaa7433c85
Style & indentation tweaks.
...
llvm-svn: 139646
2011-09-13 21:47:32 +00:00
Benjamin Kramer
cef8ee3291
I know copy&paste!
...
llvm-svn: 139628
2011-09-13 19:49:53 +00:00
Benjamin Kramer
aa2f78f5e6
Sketch out a DWARF parser.
...
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
2011-09-13 19:42:23 +00:00