summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object
Commit message (Collapse)AuthorAgeFilesLines
...
* Stub out some of the MachO relocation decoding hooks.Owen Anderson2011-10-241-0/+4
| | | | llvm-svn: 142840
* Use LLVMBool for a function that logically returns a boolean value.Owen Anderson2011-10-211-1/+1
| | | | llvm-svn: 142683
* STABS symbols are debug symbols.Owen Anderson2011-10-211-1/+3
| | | | llvm-svn: 142673
* Bind libObject API for obtaining the section containing a Symbol.Owen Anderson2011-10-211-0/+6
| | | | llvm-svn: 142667
* Expand the coverage of the libObject C bindings to include more SectionRef ↵Owen Anderson2011-10-211-0/+69
| | | | | | accessors as well as Symbol iterators. llvm-svn: 142661
* Object/COFF: Remove useless test.Michael J. Spencer2011-10-181-1/+1
| | | | llvm-svn: 142408
* Object/COFF: Change type from a struct to a uint16_t. The struct would beMichael J. Spencer2011-10-181-1/+1
| | | | | | incorrect for bigendian systems. llvm-svn: 142403
* Object: Add some types to SymbolRef::Type.Michael J. Spencer2011-10-171-0/+6
| | | | | | | | Some of these can be true at the same time and there are a lot to add, so this should be turned into a bitfield. Some of the other accessors should probably be folded into this. llvm-svn: 142318
* Object: Add isSymbolAbsolute and getSymbolSection.Michael J. Spencer2011-10-173-0/+88
| | | | llvm-svn: 142317
* Object: Add isSymbolWeak.Michael J. Spencer2011-10-173-0/+33
| | | | llvm-svn: 142316
* Object/COFF: Expose more data in the public API.Michael J. Spencer2011-10-171-16/+26
| | | | llvm-svn: 142315
* Object: Implement casting for concrete classes.Michael J. Spencer2011-10-171-0/+5
| | | | llvm-svn: 142314
* Object: Fix redundant name.Michael J. Spencer2011-10-173-5/+5
| | | | llvm-svn: 142238
* ELF: Fix the section that relocations apply to. Add test to verify. Patch by ↵Michael J. Spencer2011-10-131-3/+3
| | | | | | Danil Malyshev! llvm-svn: 141901
* COFF: Implement sectionContainsSymbol for relocatable files only.Michael J. Spencer2011-10-131-2/+8
| | | | llvm-svn: 141884
* Elf_Word is not POD! Stop using it in a DenseMap.Nick Lewycky2011-10-131-7/+4
| | | | llvm-svn: 141851
* The VMAs stored in the symbol table of a MachO file are absolute addresses, ↵Owen Anderson2011-10-121-9/+9
| | | | | | not offsets from the section. llvm-svn: 141828
* Don't label a STAB debugging symbol as a function symbol.Owen Anderson2011-10-121-0/+5
| | | | llvm-svn: 141824
* sectionContainsSymbol needs to be based on VMA's rather than section indices ↵Owen Anderson2011-10-121-2/+17
| | | | | | to properly account for files with segment load commands that contain no sections. llvm-svn: 141822
* Section indices in MachO symbol tables begin at 1, not 0.Owen Anderson2011-10-121-1/+1
| | | | llvm-svn: 141815
* lib/Object/ELFObjectFile.cpp: Fix undefined behavior for ↵NAKAMURA Takumi2011-10-121-1/+4
| | | | | | | | MC/ELF/many-section.s not to fail (on msvc). DenseMap::lookup(k) would return "default constructor value" when k was not met. It would be useless when value type were POD. llvm-svn: 141774
* Expose MachOObjectFile externally, like we do for COFF. First step in ↵Owen Anderson2011-10-111-80/+3
| | | | | | reducing the amount of special-purpose code needed for llvm-objdump. llvm-svn: 141684
* Reapply r141605 with fixes for appropriate handling of reserved section numbersNick Lewycky2011-10-111-17/+50
| | | | | | in st_shndx fields. llvm-svn: 141639
* Add support for .symtab_shnidx. Unfortunately, doing this required breaking aNick Lewycky2011-10-111-9/+42
| | | | | | | layer of abstraction around SymbolRef where you can read its private SymbolPimpl member. llvm-svn: 141636
* Revert r141605 as it broke tests for llvm-nm.Nick Lewycky2011-10-111-34/+13
| | | | llvm-svn: 141614
* Add support for reading many-section ELF files.Nick Lewycky2011-10-111-13/+34
| | | | | | | If you want to tackle adding the testcase, let me know. It's a 4.2MB ELF file and I'll be happy to mail it to you. llvm-svn: 141605
* Fix warning.Michael J. Spencer2011-10-101-2/+2
| | | | llvm-svn: 141597
* Object: add getSectionAlignment.Michael J. Spencer2011-10-103-0/+34
| | | | llvm-svn: 141581
* lib/Object: Suppress warnings on gcc-4.3.4 cygwinNAKAMURA Takumi2011-10-082-2/+2
| | | | llvm-svn: 141485
* Object: Add support for opening stdin.Michael J. Spencer2011-10-081-1/+1
| | | | llvm-svn: 141449
* Object: constize Archive.Michael J. Spencer2011-10-081-2/+2
| | | | llvm-svn: 141448
* Fix GCC again.Michael J. Spencer2011-10-071-1/+1
| | | | llvm-svn: 141389
* Change relocation API to be per section. This time without breaking GCC.Michael J. Spencer2011-10-074-157/+467
| | | | llvm-svn: 141385
* Revert 141376 and 141377 due to breaking the build.Bill Wendling2011-10-074-466/+157
| | | | | | | | | | | | | | | | --- Reverse-merging r141377 into '.': U tools/llvm-objdump/MachODump.cpp --- Reverse-merging r141376 into '.': U include/llvm/Object/COFF.h U include/llvm/Object/ObjectFile.h U include/llvm-c/Object.h U tools/llvm-objdump/llvm-objdump.cpp U lib/Object/MachOObjectFile.cpp U lib/Object/COFFObjectFile.cpp U lib/Object/Object.cpp U lib/Object/ELFObjectFile.cpp llvm-svn: 141379
* Change relocation API to be per section.Michael J. Spencer2011-10-074-157/+466
| | | | llvm-svn: 141376
* Object: Add isSection{Data,BSS}.Michael J. Spencer2011-09-283-0/+58
| | | | llvm-svn: 140721
* Object: Add archive support.Michael J. Spencer2011-09-273-1/+181
| | | | llvm-svn: 140626
* Object: make the following changes into SymbolRefBenjamin Kramer2011-09-143-3/+192
| | | | | | | | | | | - Add enum SymbolType and function getSymbolType() - Add function isGlobal() - it's returns true for symbols that can be used in another objects, such as library functions. - Rename function getAddress() to getOffset() and add new function getAddress(), because currently getAddress() returns section offset of symbol first byte. new getAddress() return symbol address. - Change usage SymbolRef::getAddress() to getOffset() in tools/llvm-nm and tools/llvm-objdump. Patch by Danil Malyshev! llvm-svn: 139683
* ObjectFile: Add support for mach-o-style dSYM companion files.Benjamin Kramer2011-09-141-0/+1
| | | | llvm-svn: 139676
* Silence false positive uninitialized variable warnings from GCC.Benjamin Kramer2011-09-131-3/+3
| | | | llvm-svn: 139573
* Remove dead code.Benjamin Kramer2011-09-091-8/+0
| | | | llvm-svn: 139343
* Fix release build:Nick Lewycky2011-09-091-3/+1
| | | | | | MachOObjectFile.cpp:524: error: unused variable 'NumLoadCommands' [-Wunused-variable] llvm-svn: 139341
* Add support for relocations to ObjectFile.Benjamin Kramer2011-09-083-18/+516
| | | | | | Patch by Danil Malyshev! llvm-svn: 139314
* Teach macho-dump to dump the uleb128s referred to by linkedit_data segments.Benjamin Kramer2011-08-301-0/+26
| | | | llvm-svn: 138836
* Teach macho-dump how to dump linkedit_data load commands.Benjamin Kramer2011-08-301-0/+12
| | | | llvm-svn: 138807
* Rewrite the CMake build to use explicit dependencies between libraries,Chandler Carruth2011-07-291-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | specified in the same file that the library itself is created. This is more idiomatic for CMake builds, and also allows us to correctly specify dependencies that are missed due to bugs in the GenLibDeps perl script, or change from compiler to compiler. On Linux, this returns CMake to a place where it can relably rebuild several targets of LLVM. I have tried not to change the dependencies from the ones in the current auto-generated file. The only places I've really diverged are in places where I was seeing link failures, and added a dependency. The goal of this patch is not to start changing the dependencies, merely to move them into the correct location, and an explicit form that we can control and change when necessary. This also removes a serialization point in the build because we don't have to scan all the libraries before we begin building various tools. We no longer have a step of the build that regenerates a file inside the source tree. A few other associated cleanups fall out of this. This isn't really finished yet though. After talking to dgregor he urged switching to a single CMake macro to construct libraries with both sources and dependencies in the arguments. Migrating from the two macros to that style will be a follow-up patch. Also, llvm-config is still generated with GenLibDeps.pl, which means it still has slightly buggy dependencies. The internal CMake 'llvm-config-like' macro uses the correct explicitly specified dependencies however. A future patch will switch llvm-config generation (when using CMake) to be based on these deps as well. This may well break Windows. I'm getting a machine set up now to dig into any failures there. If anyone can chime in with problems they see or ideas of how to solve them for Windows, much appreciated. llvm-svn: 136433
* ObjectFile: Add a method to check whether a section contains a symbol.Benjamin Kramer2011-07-153-0/+37
| | | | | | | - No ELF or COFF implementation yet, I don't have a way to test that. Should be straightforward to add though. llvm-svn: 135288
* MachOObjectFile: Get symbol functions ready for 64 bit.Benjamin Kramer2011-07-151-13/+58
| | | | llvm-svn: 135282
* Output MachO section names in the form SEGMENT,section.Benjamin Kramer2011-07-151-2/+2
| | | | llvm-svn: 135231
* Add support for 64 bit objects to MachOObjectFile.Benjamin Kramer2011-07-151-21/+77
| | | | | | - I don't see a better way than duplicating all the code. llvm-svn: 135229
OpenPOWER on IntegriCloud