summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object
Commit message (Collapse)AuthorAgeFilesLines
* Added accessors for getting coff_relocation infoMarshall Clow2012-06-181-0/+5
| | | | llvm-svn: 158675
* Had a closing brace inside an #ifdef -- oops!Marshall Clow2012-06-151-1/+1
| | | | llvm-svn: 158485
* Adding acessors to COFFObjectFile so that clients can get at the ↵Marshall Clow2012-06-151-0/+31
| | | | | | (non-generic) bits llvm-svn: 158484
* Convert comments to proper Doxygen comments.Dmitri Gribenko2012-06-091-1/+1
| | | | llvm-svn: 158248
* Mark some static arrays as const.Craig Topper2012-05-242-6/+6
| | | | llvm-svn: 157377
* Refactor data-in-code annotations.Jim Grosbach2012-05-181-0/+13
| | | | | | | | | | | | | | | | | | | | | | Use a dedicated MachO load command to annotate data-in-code regions. This is the same format the linker produces for final executable images, allowing consistency of representation and use of introspection tools for both object and executable files. Data-in-code regions are annotated via ".data_region"/".end_data_region" directive pairs, with an optional region type. data_region_directive := ".data_region" { region_type } region_type := "jt8" | "jt16" | "jt32" | "jta32" end_data_region_directive := ".end_data_region" The previous handling of ARM-style "$d.*" labels was broken and has been removed. Specifically, it didn't handle ARM vs. Thumb mode when marking the end of the section. rdar://11459456 llvm-svn: 157062
* Fix the implementation of MachOObjectFile::isSectionZeroInit so it follows ↵Eli Friedman2012-05-021-4/+6
| | | | | | the MachO spec. llvm-svn: 155976
* Implement GDB integration for source level debugging of code JITed usingPreston Gurd2012-04-161-10/+0
| | | | | | | | | | | | | | | the MCJIT execution engine. The GDB JIT debugging integration support works by registering a loaded object image with a pre-defined function that GDB will monitor if GDB is attached. GDB integration support is implemented for ELF only at this time. This integration requires GDB version 7.0 or newer. Patch by Andy Kaylor! llvm-svn: 154868
* Remove unused variable.Benjamin Kramer2012-04-131-3/+0
| | | | llvm-svn: 154661
* This patch improves the MCJIT runtime dynamic loader by adding new handlingPreston Gurd2012-04-122-4/+72
| | | | | | | | | | of zero-initialized sections, virtual sections and common symbols and preventing the loading of sections which are not required for execution such as debug information. Patch by Andy Kaylor! llvm-svn: 154610
* Add a constructor for DataRefImpl and remove excess initialization.Danil Malyshev2012-04-102-16/+0
| | | | llvm-svn: 154371
* Object: drop bogus VMCore dependencyDylan Noblesmith2012-04-031-1/+1
| | | | llvm-svn: 153956
* [Object/COFF]: Expose getSectionContents.Michael J. Spencer2012-03-191-10/+19
| | | | llvm-svn: 153051
* [Object/COFF]: Expose getSectionName.Michael J. Spencer2012-03-191-19/+24
| | | | | | Also add some documentation. llvm-svn: 153050
* Fix bug found by warning.Michael J. Spencer2012-03-151-1/+2
| | | | llvm-svn: 152812
* [Object]David Meyer2012-03-093-3/+3
| | | | | | Make Binary::TypeID more granular, to distinguish between ELF 32/64 little/big llvm-svn: 152435
* [Object]David Meyer2012-03-012-0/+11
| | | | | | Add ObjectFile::getLoadName() for retrieving the soname/installname of a shared object. llvm-svn: 151845
* [Object]David Meyer2012-03-012-0/+41
| | | | | | | | | * 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
* [Object] Add symbol attribute flags: ST_ThreadLocal, ST_Common, and ↵David Meyer2012-02-292-4/+13
| | | | | | | | | ST_Undefined. Implement these completely for ELF. Rename ST_External to ST_Unknown, and slightly change its semantics. It now only indicates that the symbol's type is unknown, not that the symbol is undefined. (For that, use ST_Undefined). llvm-svn: 151696
* In the ObjectFile interface, replace isInternal(), isAbsolute(), isGlobal(), ↵David Meyer2012-02-282-65/+32
| | | | | | and isWeak(), with a bitset of flags. llvm-svn: 151670
* [Object] Add {begin,end}_dynamic_symbols stubs and implementation for ELF.Michael J. Spencer2012-02-282-0/+19
| | | | | | | | Add -D option to llvm-nm to dump dynamic symbols. Patch by David Meyer. llvm-svn: 151600
* Remove static ctor.Benjamin Kramer2012-02-221-2/+2
| | | | llvm-svn: 151160
* Expose the ELFObjectFile class directly in the Object/ELF.h header, similarlyEli Bendersky2012-02-121-1695/+25
| | | | | | | | | | to what's done for MachO and COFF. This allows advanced uses of the class to be implemented outside the Object library. In particular, the DyldELFObject subclass is now moved into its logical home - ExecutionEngine/RuntimeDyld. This patch was reviewed by Michael Spencer. llvm-svn: 150327
* Object: avoid undefined behavior when bounds-checkingDylan Noblesmith2012-02-041-8/+22
| | | | | | | | | | Don't form an out of bounds pointer just to test if it would be out of bounds. Also perform the same bounds checking for all the previous mapped structures. llvm-svn: 149750
* Sink assert-only variables into the assertsMatt Beaumont-Gay2012-01-241-16/+10
| | | | llvm-svn: 148849
* Silence warnings in -asserts buildMatt Beaumont-Gay2012-01-231-0/+6
| | | | llvm-svn: 148715
* Remove trailing spacesEli Bendersky2012-01-221-2/+2
| | | | llvm-svn: 148654
* Basic runtime dynamic loading capabilities added to ELFObjectFile, implementedEli Bendersky2012-01-221-19/+239
| | | | | | | | | | | | | in a subclass named DyldELFObject. This class supports rebasing the object file it represents by re-mapping section addresses to the actual memory addresses the object was placed in. This is required for MC-JIT implementation on ELF with debugging support. Patch reviewed on llvm-commits. Developed together with Ashok Thirumurthi and Andrew Kaylor. llvm-svn: 148653
* Remove unused variables.Rafael Espindola2011-12-251-1/+1
| | | | llvm-svn: 147261
* Unweaken vtables as per ↵David Blaikie2011-12-202-0/+4
| | | | | | http://llvm.org/docs/CodingStandards.html#ll_virtual_anch llvm-svn: 146960
* LLVMBuild: Remove trailing newline, which irked me.Daniel Dunbar2011-12-121-1/+0
| | | | llvm-svn: 146409
* build/CMake: Finish removal of add_llvm_library_dependencies.Daniel Dunbar2011-11-291-5/+0
| | | | llvm-svn: 145420
* Fixed ObjectFile functions:Danil Malyshev2011-11-294-32/+140
| | | | | | | | | | | - 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
* Fix some possible gcc-4.2 may be used uninitialized warnings.Daniel Dunbar2011-11-281-2/+2
| | | | llvm-svn: 145292
* Revert r145180 as it is causing test failures on all the bots.Chandler Carruth2011-11-274-126/+32
| | | | | | | | | | | | | Original commit message: Fixed ObjectFile functions: - 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: 145182
* Fixed ObjectFile functions:Danil Malyshev2011-11-274-32/+126
| | | | | | | | | | | - 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: 145180
* Object/COFF: Support common symbols.Michael J. Spencer2011-11-161-1/+3
| | | | llvm-svn: 144861
* build: Attempt to rectify inconsistencies between CMake and LLVMBuild ↵Daniel Dunbar2011-11-121-1/+1
| | | | | | | | versions of explicit dependencies. - The hope is that we have a tool/test to verify these are accurate (and tight) soon. llvm-svn: 144444
* Object/COFF: Fix PE reading.Michael J. Spencer2011-11-081-23/+30
| | | | llvm-svn: 144148
* MachOObject: Use DataExtractor's uleb parser instead of rolling our own.Benjamin Kramer2011-11-051-21/+10
| | | | llvm-svn: 143810
* Simplify code.Benjamin Kramer2011-11-041-4/+3
| | | | llvm-svn: 143695
* build: Add initial cut at LLVMBuild.txt files.Daniel Dunbar2011-11-031-0/+23
| | | | llvm-svn: 143634
* Removed unused variable.Chad Rosier2011-11-021-1/+0
| | | | llvm-svn: 143591
* object/COFF: Properly initalize uses of DataRefImpl.Michael J. Spencer2011-11-021-0/+2
| | | | llvm-svn: 143562
* Object/Archive: Add symbol table iteration.Michael J. Spencer2011-11-021-9/+71
| | | | llvm-svn: 143561
* If we're searching for a symbol reference to pretty-print a scattered ↵Owen Anderson2011-10-271-0/+18
| | | | | | relocation address, and we don't find a symbol table entry, try section begin addresses as well. llvm-svn: 143151
* Fix pretty printing of i386 local sect diff relocations, TLV relocations, ↵Owen Anderson2011-10-271-7/+50
| | | | | | and x86_64 TLV relocations in MachO. llvm-svn: 143140
* Expose relocation accessors through the libObject C API.Owen Anderson2011-10-271-0/+45
| | | | llvm-svn: 143109
* Add relocation iterators to the libObject C API.Owen Anderson2011-10-271-0/+23
| | | | llvm-svn: 143107
* Add support for scattered relocations to the MachO relocatation pretty printer.Owen Anderson2011-10-261-86/+144
| | | | llvm-svn: 143051
OpenPOWER on IntegriCloud