| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
(instead of basenames) from DWARF. Use this behavior in llvm-dwarfdump tool.
Reviewed by Benjamin Kramer.
llvm-svn: 160496
|
| |
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
http://llvm.org/docs/CodingStandards.html#ll_virtual_anch
llvm-svn: 146960
|
| |
|
|
|
|
| |
unnecessary lookup.
llvm-svn: 139859
|
| |
|
|
| |
llvm-svn: 139846
|
| |
|
|
|
|
| |
DIContext that provides line information when given an address.
llvm-svn: 139836
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 139808
|
| |
|
|
| |
llvm-svn: 139799
|
| |
|
|
|
|
| |
The llvm-dwarfdump output isn't very verbose yet.
llvm-svn: 139771
|
| |
|
|
|
|
|
|
| |
is not available.
Ported from LLDB.
llvm-svn: 139732
|
| |
|
|
|
|
|
|
|
| |
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
|
|
|
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
|