- May 04, 2013
-
-
Rafael Espindola authored
llvm-svn: 181096
-
Rafael Espindola authored
llvm-svn: 181095
-
Amara Emerson authored
llvm-svn: 181079
-
- May 03, 2013
-
-
Amara Emerson authored
Build attribute sections can now be read if they exist via ELFObjectFile, and the llvm-readobj tool has been extended with an option to dump this information if requested. Regression tests are also included which exercise these features. Also update the docs with a fixed ARM ABI link and a new link to the Addenda which provides the build attributes specification. llvm-svn: 181009
-
Bill Wendling authored
llvm-svn: 180967
-
- May 02, 2013
-
-
Bill Wendling authored
llvm-svn: 180949
-
- Apr 26, 2013
-
-
Rafael Espindola authored
For Mach-O there were 2 implementations for parsing object files. A standalone llvm/Object/MachOObject.h and llvm/Object/MachO.h which implements the generic interface in llvm/Object/ObjectFile.h. This patch adds the missing features to MachO.h, moves macho-dump to use MachO.h and removes ObjectFile.h. In addition to making sure that check-all is clean, I checked that the new version produces exactly the same output in all Mach-O files in a llvm+clang build directory (including executables and shared libraries). To test the performance, I ran macho-dump over all the files in a llvm+clang build directory again, but this time redirecting the output to /dev/null. Both the old and new versions take about 4.6 seconds (2.5 user) to finish. llvm-svn: 180624
-
- Apr 25, 2013
-
-
Rafael Espindola authored
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
-
Rafael Espindola authored
llvm-svn: 180247
-
- Apr 24, 2013
-
-
Rafael Espindola authored
While here, don't report a dummy symbol for relocations that don't have symbols. We used to says such relocations were for the first defined symbol, but now we return end_symbols(). The llvm-readobj output change agrees with otool. llvm-svn: 180214
-
Rafael Espindola authored
LTO was always creating an empty llvm.compiler.used. With this patch we now first check if there is anything to be added first. Unfortunately, there is no good way to test libLTO in isolation as it needs gold or ld64, but there are bots doing LTO builds that found this problem. llvm-svn: 180202
-
- Apr 23, 2013
-
-
Rafael Espindola authored
llvm-svn: 180137
-
Rafael Espindola authored
The COFFParser now contains only a COFFYAML::Object and the string table (which is recomputed, not serialized). The structs in COFFParser now all begin with a Header field with what is actually on the COFF object. The other fields are things that are semantically part of the struct (relocations in a section for exmaple), but are not actually represented that way in the object file. llvm-svn: 180134
-
Rafael Espindola authored
llvm-svn: 180115
-
- Apr 22, 2013
-
-
Nico Rieck authored
llvm-svn: 180007
-
Nico Rieck authored
llvm-svn: 180006
-
Nico Rieck authored
llvm-svn: 180005
-
- Apr 20, 2013
-
-
Rafael Espindola authored
This is part of a future patch to use yamlio that incorrectly ended up in a cleanup patch. Thanks to Benjamin Kramer for reporting it. llvm-svn: 179938
-
Rafael Espindola authored
llvm-svn: 179923
-
Rafael Espindola authored
llvm-svn: 179922
-
Rafael Espindola authored
llvm-svn: 179921
-
Rafael Espindola authored
* using namespace llvm. * whitespace. * early return. llvm-svn: 179920
-
Rafael Espindola authored
Instead, use MappingNormalization to directly parse COFF::header. Also change the naming convention of the helper classes to be a bit shorter. llvm-svn: 179917
-
- Apr 19, 2013
-
-
Rafael Espindola authored
Use MappingNormalization to read a COFF::relocation directly. No functionality change. llvm-svn: 179891
-
Rafael Espindola authored
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
-
- Apr 18, 2013
-
-
Rafael Espindola authored
We are still able to handle mixed endian objects by swapping one struct at a time. llvm-svn: 179778
-
- Apr 17, 2013
-
-
Peter Collingbourne authored
Differential Revision: http://llvm-reviews.chandlerc.com/D598 llvm-svn: 179725
-
- Apr 16, 2013
-
-
Alexey Samsonov authored
llvm-objdump: Don't print contents of BSS sections: it makes no sense and crashes llvm-objdump on relocated objects with large bss llvm-svn: 179589
-
- Apr 15, 2013
-
-
Rafael Espindola authored
llvm-svn: 179534
-
Andy Gibbs authored
This is a rework of the broken parts in r179373 which were subsequently reverted in r179374 due to incompatibility with C++98 compilers. This version should be ok under C++98. llvm-svn: 179520
-
Eric Christopher authored
I can fix the testcases here: http://lab.llvm.org:8011/builders/clang-native-arm-cortex-a9/builds/6952 This reverts commit r179512 due to testcases specifying triples that they didn't actually mean and causing failures on other platforms. llvm-svn: 179513
-
Eric Christopher authored
llvm-svn: 179512
-
Eric Christopher authored
This reverts commit r179497 and the accompanying commit as it broke random platforms that aren't osx. llvm-svn: 179499
-
Eric Christopher authored
and use that as the default triple for the module and target data layout. llvm-svn: 179497
-
- Apr 13, 2013
-
-
Rafael Espindola authored
We are now able to handle big endian macho files in llvm-readobject. Thanks to David Fang for providing the object files. llvm-svn: 179440
-
- Apr 12, 2013
-
-
Benjamin Kramer authored
You can't copy an OwningPtr, and move semantics aren't available in C++98. llvm-svn: 179374
-
Andy Gibbs authored
llvm-svn: 179373
-
Nico Rieck authored
llvm-svn: 179363
-
Nico Rieck authored
This option expands shown relocations from single line to a dictionary format: Relocation { Offset: 0x4 Type: R_386_32 (1) Symbol: sym Info: 0x0 } llvm-svn: 179359
-
Rafael Espindola authored
Original message: Print more information about relocations. With this patch llvm-readobj now prints if a relocation is pcrel, its length, if it is extern and if it is scattered. It also refactors the code a bit to use bit fields instead of shifts and masks all over the place. llvm-svn: 179345
-