summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter
Commit message (Collapse)AuthorAgeFilesLines
...
* [lld][ELF] Add modified writerShankar Easwaran2013-03-031-0/+38
| | | | llvm-svn: 176425
* [lld][ELF] rename to add new support in the ELF WriterShankar Easwaran2013-03-032-26/+9
| | | | llvm-svn: 176424
* [ELF] rename Writer to ExecutableWriterShankar Easwaran2013-03-032-1/+1
| | | | llvm-svn: 176416
* [ELF][Hexagon] add initial changes to add GOT/PLTShankar Easwaran2013-03-035-0/+277
| | | | llvm-svn: 176415
* move dynamic linking atoms to Atoms.hShankar Easwaran2013-03-013-129/+160
| | | | llvm-svn: 176370
* [Writer][ELF][x86-64] Handle GOTPCREL relocations to SharedLibraryAtoms.Michael J. Spencer2013-03-011-0/+25
| | | | llvm-svn: 176324
* [ELF][x86-64] Only emit a PLT entry for a PLT relocation if the target atom ↵Michael J. Spencer2013-03-011-1/+2
| | | | | | | | | | is a SharedLibraryAtom. This seems to be what ld does, but I'm not sure how it works with symbol interposition. With this hello-world with glibc dynamically linked works. llvm-svn: 176310
* Add basic linker script parsing.Michael J. Spencer2013-03-014-5/+398
| | | | llvm-svn: 176309
* [ELF][Hexagon] add quickdata relocationsShankar Easwaran2013-02-286-15/+54
| | | | llvm-svn: 176298
* [ELF][x86-64] Separate static and dynamic GOT/PLT generation.Michael J. Spencer2013-02-284-28/+152
| | | | llvm-svn: 176294
* [ELF] Set header flags to 0 by defaultShankar Easwaran2013-02-282-3/+6
| | | | llvm-svn: 176279
* [ELF][Hexagon] change Header flagsShankar Easwaran2013-02-281-0/+9
| | | | llvm-svn: 176278
* [lld][ELF][Hexagon] add more relocationsShankar Easwaran2013-02-282-26/+100
| | | | llvm-svn: 176277
* [lld][ELF] Order segmentsShankar Easwaran2013-02-274-79/+220
| | | | llvm-svn: 176207
* fixing build error properly according to comment from DavidShankar Easwaran2013-02-271-2/+1
| | | | llvm-svn: 176169
* adding a return to fix compilation error from buildbot, build #75Shankar Easwaran2013-02-271-0/+1
| | | | llvm-svn: 176167
* fixing typo in header fileShankar Easwaran2013-02-273-3/+6
| | | | llvm-svn: 176162
* [ELF][Writer] Add dynamic relocation tables.Michael J. Spencer2013-02-273-20/+128
| | | | | | | This adds separate PLT and dynamic relocation tables. It also fills in the dynamic table entries for them. llvm-svn: 176150
* [ELF][Writer] Fill in dynamic table entries.Michael J. Spencer2013-02-251-1/+54
| | | | llvm-svn: 176045
* [ELF][Hexagon] add _SDA_BASE_(absolute symbol pointing to start of quickdata)Shankar Easwaran2013-02-245-2/+57
| | | | llvm-svn: 175997
* [ELF] Change functions to virtual, in ExecutableAtomsShankar Easwaran2013-02-241-7/+7
| | | | llvm-svn: 175993
* [ELF]Change name of runtime files, so that targets can change runtime files ↵Shankar Easwaran2013-02-241-3/+4
| | | | | | that they own llvm-svn: 175992
* [ELF][Hexagon]add typeZeroFillFastShankar Easwaran2013-02-248-18/+43
| | | | llvm-svn: 175983
* [ELF][Writer] Add hash table.Michael J. Spencer2013-02-232-0/+41
| | | | llvm-svn: 175972
* [ELF][Writer] Add a PHDR program table entry for dynamic files.Michael J. Spencer2013-02-232-0/+23
| | | | llvm-svn: 175951
* [ELF][Writer] Add dynamic string and symbol table.Michael J. Spencer2013-02-232-58/+115
| | | | llvm-svn: 175941
* sort quickdata for the hexagon targetShankar Easwaran2013-02-228-24/+173
| | | | llvm-svn: 175904
* add changes for typeDataFastShankar Easwaran2013-02-228-43/+157
| | | | llvm-svn: 175901
* [ELF][Writer] Add .interp section.Michael J. Spencer2013-02-203-1/+32
| | | | llvm-svn: 175657
* [ELF][Writer] Add dynamic table.Michael J. Spencer2013-02-204-2/+56
| | | | llvm-svn: 175654
* rename fixupAddend to relocAddendShankar Easwaran2013-02-202-2/+2
| | | | llvm-svn: 175638
* functionality to handle global atoms in Merge sectionsShankar Easwaran2013-02-204-22/+51
| | | | llvm-svn: 175636
* [ELF] Fix memory leak by deleting BumpPtr allocated objects.Michael J. Spencer2013-02-194-38/+40
| | | | llvm-svn: 175558
* Switch a vector<pair<const T &, const U &>> to a vector<pair<const T *,Chandler Carruth2013-02-191-7/+7
| | | | | | | | | | | const U *>>. Even in C++11 it doesn't seem this is valid as vector's emplace support requires move assignment, and there is no way to move assign a reference. The real motivation however is that this fixes the build of lld with libstdc++ 4.6. llvm-svn: 175481
* [Core,Driver,ELF] Differentiate static and dynamic executables.Michael J. Spencer2013-02-146-62/+120
| | | | | | | This also adds a simple relocation change for dynamic executables to x86-64 ELF. llvm-svn: 175208
* [ELF][Writer] Refactor Section to not have atoms. Move atoms into AtomSection.Michael J. Spencer2013-02-147-273/+236
| | | | | | | | | The purpose of this change is to simplify creating non-atom sections. Previously _contentType, _sectionKind and _order were used for multiple purposes and collided in places. This moves all of the Atom specific logic down into AtomSection and makes Section just have raw Elf_Shdr flags. llvm-svn: 175207
* fix the mergeable string atom, when the target points to a symbol which is ↵Shankar Easwaran2013-02-132-6/+15
| | | | | | at a relative offset from the start of the .rodata section llvm-svn: 175039
* add merge strings option, this temporarily fixes the problem bringing up ↵Shankar Easwaran2013-02-131-15/+21
| | | | | | helloworld with glibc on x86_64 llvm-svn: 175038
* add support for merging common stringsShankar Easwaran2013-02-122-15/+256
| | | | llvm-svn: 174990
* [ELF] Add support for reading dynamic libraries.Michael J. Spencer2013-02-117-90/+336
| | | | llvm-svn: 174916
* fix segment ordering of elf segmentsShankar Easwaran2013-02-071-12/+42
| | | | llvm-svn: 174659
* add changes for layoutafter/layoutbefore/ingroup/layoutpass and test casesShankar Easwaran2013-02-079-32/+94
| | | | llvm-svn: 174658
* [Driver] Replace Target with TargetInfo. Simplify LinkerInput.Michael J. Spencer2013-02-071-0/+19
| | | | | | | | This removes Target and moves the functionality it had over to TargetInfo. This also simplifies LinkerInput by removing the InputKind. This will be handled elsewhere. llvm-svn: 174589
* [ELF][x86-64] Handle PLT32 relocations to IFUNC.Michael J. Spencer2013-02-051-2/+4
| | | | llvm-svn: 174428
* [ELF][Layout] Provide a proper way to get the TLS segment size.Michael J. Spencer2013-02-052-13/+13
| | | | llvm-svn: 174427
* [ELF] Implement GOTPCREL for defined atoms.Michael J. Spencer2013-02-051-7/+23
| | | | llvm-svn: 174426
* [ELF] Replace local dynamic tls access with direct access.Michael J. Spencer2013-02-052-3/+43
| | | | llvm-svn: 174425
* [ELF] Use LLVM_IS_UNALIGNED_ACCESS_FAST.Michael J. Spencer2013-02-031-4/+16
| | | | llvm-svn: 174276
* [ELF][Reader] Improve performance by removing calls to malloc.Michael J. Spencer2013-02-031-17/+49
| | | | llvm-svn: 174275
* [ELF] Fix uninitialized variable.Michael J. Spencer2013-02-031-1/+1
| | | | llvm-svn: 174274
OpenPOWER on IntegriCloud