- Jun 17, 2013
-
-
Rafael Espindola authored
llvm-svn: 184092
-
Rafael Espindola authored
llvm-ar is the only tool that needs to write archive files. Every other tool should be able to use the lib/Object interface. llvm-svn: 184083
-
Rafael Espindola authored
llvm-svn: 184081
-
- Jun 15, 2013
-
-
Sean Silva authored
llvm-svn: 184025
-
Sean Silva authored
llvm-svn: 184022
-
Rafael Espindola authored
Archive files (.a) can have a symbol table indicating which object files in them define which symbols. The purpose of this symbol table is to speed up linking by allowing the linker the read only the .o files it is actually going to use instead of having to parse every object's symbol table. LLVM's archive library currently supports a LLVM specific format for such table. It is hard to see any value in that now that llvm-ld is gone: * System linkers don't use it: GNU ar uses the same plugin as the linker to create archive files with a regular index. The OS X ar creates no symbol table for IL files, I assume the linker just parses all IL files. * It doesn't interact well with archives having both IL and native objects. * We probably don't want to be responsible for yet another archive format variant. This patch then: * Removes support for creating and reading such index from lib/Archive. * Remove llvm-ranlib, since there is nothing left for it to do. We should in the future add support for regular indexes to llvm-ar for both native and IL objects. When we do that, llvm-ranlib should be reimplemented as a symlink to llvm-ar, as it is equivalent to "ar s". llvm-svn: 184019
-
- Jun 14, 2013
-
-
Rafael Espindola authored
llvm-svn: 183980
-
Rafael Espindola authored
llvm-svn: 183968
-
Sean Silva authored
For consistency, change the address in the test case from 0xDEADBEEF to 0xCAFEBABE since 0xCAFEBABE that actually has a 2-byte alignment. llvm-svn: 183962
-
Sean Silva authored
llvm-svn: 183955
-
Sean Silva authored
llvm-svn: 183954
-
Sean Silva authored
The current functionality is extremely basic and a bit rough around the edges, but it will flesh out in future commits. llvm-svn: 183953
-
- Jun 13, 2013
-
-
Rafael Espindola authored
llvm-svn: 183947
-
Rafael Espindola authored
llvm-svn: 183941
-
Rafael Espindola authored
llvm-svn: 183940
-
Rafael Espindola authored
llvm-svn: 183928
-
Rafael Espindola authored
llvm-svn: 183912
-
Rafael Espindola authored
llvm-svn: 183909
-
Rafael Espindola authored
llvm-svn: 183908
-
- Jun 12, 2013
-
-
Rafael Espindola authored
It was only used to implement ExecuteAndWait and ExecuteNoWait. Expose just those two functions and make Execute and Wait implementations details. llvm-svn: 183864
-
Rui Ueyama authored
These records are mandatory for executables and are used by the loader. Reviewers: rafael CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D939 llvm-svn: 183852
-
Rafael Espindola authored
llvm-svn: 183840
-
- Jun 11, 2013
-
-
Rafael Espindola authored
This is preparation for replacing Path.h with PathV2.h. llvm-svn: 183782
-
Rafael Espindola authored
No functionality change. llvm-svn: 183759
-
Sean Silva authored
Should bring bots back to life. llvm-svn: 183715
-
Sean Silva authored
Currently, only emitting the ELF header is supported (no sections or segments). The ELFYAML code organization is broadly similar to the COFFYAML code. llvm-svn: 183711
-
- Jun 10, 2013
-
-
Rafael Espindola authored
llvm-svn: 183669
-
- Jun 07, 2013
-
-
Alexey Samsonov authored
llvm-svn: 183526
-
- Jun 06, 2013
-
-
Kevin Enderby authored
from the LC_DATA_IN_CODE load command. And when disassembling print the data in code formatted for the kind of data it and not disassemble those bytes. I added the format specific functionality to the derived class MachOObjectFile since these tables only appears in Mach-O object files. This is my first attempt to modify the libObject stuff so if folks have better suggestions how to fit this in or suggestions on the implementation please let me know. rdar://11791371 llvm-svn: 183424
-
Rafael Espindola authored
llvm-svn: 183403
-
Sean Silva authored
This avoids making assumptions about the data representation. llvm-svn: 183349
-
Sean Silva authored
Previously, yaml2coff.cpp had a writeHexData static helper function to do this, but it is generally useful functionality. Also, validate hex strings up-front to avoid running having to handle errors "deep inside" the yaml2obj code (it also gives better diagnostics than it used to). llvm-svn: 183345
-
- Jun 05, 2013
-
-
Sean Silva authored
llvm-svn: 183335
-
Sean Silva authored
See the comment in yaml2obj.cpp for why this is currently needed. Eventually we can get rid of this, but for now it is needed in order to make forward progress with adding ELF support, and should be straightforward to remove later. Also, preserve the default of COFF, to avoid breaking existing tests. This policy can easily be changed later though. llvm-svn: 183332
-
Rafael Espindola authored
It will be used for ELF dumping too. llvm-svn: 183287
-
Rafael Espindola authored
In ELF (as in MachO), not all relocations point to symbols. Represent this properly by using a symbol_iterator instead of a SymbolRef. Update llvm-readobj ELF's dumper to handle relocatios without symbols. llvm-svn: 183284
-
- Jun 04, 2013
-
-
Bob Wilson authored
Specifying the load address for Darwin i386 dylibs was a performance optimization for dyld that is not relevant for x86_64 or arm. We can just remove this now. llvm-svn: 183230
-
Alexey Samsonov authored
[llvm-symbolizer] Avoid calling slow getSymbolSize for Mach-O files. Assume that symbols with zero size are in fact large enough. llvm-svn: 183213
-
- Jun 03, 2013
-
-
Rafael Espindola authored
Thanks to Sean Silva for noticing it! llvm-svn: 183148
-
Alexey Samsonov authored
llvm-svn: 183102
-