| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
and then dumping as tests.
llvm-svn: 180010
|
|
|
|
| |
llvm-svn: 179850
|
|
|
|
|
|
|
|
|
| |
Thanks to Evgeniy Stepanov for reporting this.
It might be a good idea to add a command iterator abstraction to MachO.h, but
this fixes the bug for now.
llvm-svn: 179848
|
|
|
|
|
|
| |
crashes llvm-objdump on relocated objects with large bss
llvm-svn: 179589
|
|
|
|
| |
llvm-svn: 178829
|
|
|
|
|
|
|
|
| |
It had been dropped during the switch to yaml::IO. Also add a test going
from yaml2obj to llvm-readobj. It can be extended as we add more
fields/formats to yaml2obj.
llvm-svn: 178786
|
|
|
|
|
|
|
|
| |
Normally r_info is just a 32 of 64 bit number matching the endian of the rest
of the file. Unfortunately, mips 64 bit little endian is special: The top 32
bits are a little endian number and the following 32 are a big endian one.
llvm-svn: 178694
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ELF with support for:
- File headers
- Section headers + data
- Relocations
- Symbols
- Unwind data (only COFF/Win64)
The output format follows a few rules:
- Values are almost always output one per line (as elf-dump/coff-dump already do). - Many values are translated to something readable (like enum names), with the raw value in parentheses.
- Hex numbers are output in uppercase, prefixed with "0x".
- Flags are sorted alphabetically.
- Lists and groups are always delimited.
Example output:
---------- snip ----------
Sections [
Section {
Index: 1
Name: .text (5)
Type: SHT_PROGBITS (0x1)
Flags [ (0x6)
SHF_ALLOC (0x2)
SHF_EXECINSTR (0x4)
]
Address: 0x0
Offset: 0x40
Size: 33
Link: 0
Info: 0
AddressAlignment: 16
EntrySize: 0
Relocations [
0x6 R_386_32 .rodata.str1.1 0x0
0xB R_386_PC32 puts 0x0
0x12 R_386_32 .rodata.str1.1 0x0
0x17 R_386_PC32 puts 0x0
]
SectionData (
0000: 83EC04C7 04240000 0000E8FC FFFFFFC7 |.....$..........|
0010: 04240600 0000E8FC FFFFFF31 C083C404 |.$.........1....|
0020: C3 |.|
)
}
]
---------- snip ----------
Relocations and symbols can be output standalone or together with the section header as displayed in the example.
This feature set supports all tests in test/MC/COFF and test/MC/ELF (and I suspect all additional tests using elf-dump), making elf-dump and coff-dump deprecated.
Patch by Nico Rieck!
llvm-svn: 178679
|
|
|
|
|
|
| |
Patch by Nico Rieck!
llvm-svn: 178677
|
|
|
|
|
|
| |
Patch by Nico Rieck!
llvm-svn: 178676
|
|
|
|
|
|
| |
symbol table / dynamic symbol table
llvm-svn: 177873
|
|
|
|
| |
llvm-svn: 175592
|
|
|
|
| |
llvm-svn: 174639
|
|
|
|
| |
llvm-svn: 172130
|
|
|
|
| |
llvm-svn: 171650
|
|
|
|
|
|
| |
This currently prints the ELF program headers.
llvm-svn: 171649
|
|
|
|
|
|
| |
to create a properly aligned reader.
llvm-svn: 171520
|
|
|
|
|
|
|
|
| |
They are failing because archives create unaligned ELF files. The recent
Endian change added a __builtin_unreachable() when this happens. I will be
committing a fix for this soon.
llvm-svn: 171438
|
|
|
|
|
|
|
|
| |
Fixes PR14723.
Patch by Sami Liedes!
llvm-svn: 171309
|
|
|
|
| |
llvm-svn: 171304
|
|
|
|
| |
llvm-svn: 171302
|
|
|
|
| |
llvm-svn: 170349
|
|
|
|
| |
llvm-svn: 167872
|
|
|
|
| |
llvm-svn: 167866
|
|
|
|
| |
llvm-svn: 167853
|
|
|
|
|
|
| |
symbol table entry should be treated differently for relocatable and relocated files. This patch fixes symbol addresses printed by llvm-nm for executables and shared objects.
llvm-svn: 164365
|
|
|
|
| |
llvm-svn: 163272
|
|
|
|
|
|
| |
every relocation in C++ hello world built with debug info.
llvm-svn: 163271
|
|
|
|
| |
llvm-svn: 162819
|
|
|
|
| |
llvm-svn: 162808
|
|
|
|
|
|
|
|
|
|
|
|
| |
delimited. llvm-mc -disassemble access these through the -mattr
option.
llvm-objdump -disassemble had no such way to set the attribute so
some instructions were just not recognized for disassembly.
This patch accepts llvm-mc mechanism for specifying the attributes.
llvm-svn: 162781
|
|
|
|
|
|
| |
test files.
llvm-svn: 161219
|
|
|
|
|
|
|
|
| |
yaml2obj takes a textual description of an object file in YAML format
and outputs the binary equivalent. This greatly simplifies writing
tests that take binary object files as input.
llvm-svn: 161205
|
|
|
|
|
|
| |
<sidneym@codeaurora.org>
llvm-svn: 159081
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Removed test/lib/llvm.exp - it is no longer needed
* Deleted the dg.exp reading code from test/lit.cfg. There are no dg.exp files
left in the test suite so this code is no longer required. test/lit.cfg is
now much shorter and clearer
* Removed a lot of duplicate code in lit.local.cfg files that need access to
the root configuration, by adding a "root" attribute to the TestingConfig
object. This attribute is dynamically computed to provide the same
information as was previously provided by the custom getRoot functions.
* Documented the config.root attribute in docs/CommandGuide/lit.pod
llvm-svn: 153408
|
|
|
|
|
|
|
|
|
|
| |
* Add enums and structures for GNU version information.
* Implement extraction of that information on a per-symbol basis (ELFObjectFile::getSymbolVersion).
* Implement a generic interface, GetELFSymbolVersion(), for getting the symbol version from the ObjectFile (hides the templating).
* Have llvm-readobj print out the version, when available.
* Add a test for the new feature: readobj-elf-versioning.test
llvm-svn: 152436
|
|
|
|
|
|
| |
Add ObjectFile::getLoadName() for retrieving the soname/installname of a shared object.
llvm-svn: 151845
|
|
|
|
|
|
|
|
|
| |
* Add begin_dynamic_table() / end_dynamic_table() private interface to ELFObjectFile.
* Add begin_libraries_needed() / end_libraries_needed() interface to ObjectFile, for grabbing the list of needed libraries for a shared object or dynamic executable.
* Implement this new interface completely for ELF, leave stubs for COFF and MachO.
* Add 'llvm-readobj' tool for dumping ObjectFile information.
llvm-svn: 151785
|
|
|
|
|
|
|
|
| |
Add -D option to llvm-nm to dump dynamic symbols.
Patch by David Meyer.
llvm-svn: 151600
|
|
|
|
|
|
|
|
| |
run with LIT now and now Dejagnu. dg.exp is no longer needed.
Patch reviewed by Daniel Dunbar. It will be followed by additional cleanup patches.
llvm-svn: 150664
|
|
|
|
|
|
|
|
|
|
|
| |
- getSymbolOffset() renamed as getSymbolFileOffset()
- getSymbolFileOffset(), getSymbolAddress(), getRelocationAddress() returns same result for ELFObjectFile, MachOObjectFile and COFFObjectFile.
- added getRelocationOffset()
- fixed MachOObjectFile::getSymbolSize()
- fixed MachOObjectFile::getSymbolSection()
- fixed MachOObjectFile::getSymbolOffset() for symbols without section data.
llvm-svn: 145408
|
|
|
|
| |
llvm-svn: 143424
|
|
|
|
| |
llvm-svn: 143404
|
|
|
|
| |
llvm-svn: 143400
|
|
|
|
| |
llvm-svn: 142982
|
|
|
|
| |
llvm-svn: 142404
|
|
|
|
|
|
| |
This reverts commit 0c30d4e4f5f9110c5a67bd0ca84444dc58697596.
llvm-svn: 142320
|
|
|
|
| |
llvm-svn: 142319
|
|
|
|
| |
llvm-svn: 142199
|
|
|
|
| |
llvm-svn: 142198
|