summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter/ELF
Commit message (Collapse)AuthorAgeFilesLines
...
* [ELF][Writer] Don't infinite loop.Michael J. Spencer2013-01-051-1/+1
| | | | | | | This will be tested by a following committ that runs the linker with no inputs. llvm-svn: 171576
* StyleMichael J. Spencer2013-01-053-97/+62
| | | | llvm-svn: 171575
* [ELF] STT_GNU_IFUNC is a known symbol type, so accept it. We do not yet ↵Michael J. Spencer2013-01-041-0/+1
| | | | | | implement its semantics. llvm-svn: 171533
* [ELF] Handle misaligned ELF files properly.Michael J. Spencer2013-01-043-454/+576
| | | | llvm-svn: 171526
* add Changes to ELF Writer to layout sections/segments in the output executableShankar Easwaran2012-12-271-1188/+1878
| | | | llvm-svn: 171135
* changes for the ELF Reader : split up into AtomsELF.h/Adding new permissions ↵Shankar Easwaran2012-12-272-379/+412
| | | | | | permRWX llvm-svn: 171127
* changes to fix Hexagon Relocation so that it accounts for the bitmask ↵Shankar Easwaran2012-12-271-2/+2
| | | | | | properly as documented in the ABI llvm-svn: 171125
* [ELF][Reader] Ignore SHF_GROUP when switching on flags.Michael J. Spencer2012-12-201-2/+2
| | | | llvm-svn: 170624
* Style fixes.Michael J. Spencer2012-12-201-138/+79
| | | | llvm-svn: 170623
* Add library dependencies to the lld cmake build.Benjamin Kramer2012-12-041-0/+4
| | | | llvm-svn: 169306
* Populate entry point into ELF executable.Hemant Kulkarni2012-11-213-21/+49
| | | | llvm-svn: 168461
* Add program header emission to ELF writer. This patch also rearranges ↵Hemant Kulkarni2012-11-131-105/+424
| | | | | | sections for efficient memory utilization llvm-svn: 167874
* Fix style violations.Michael J. Spencer2012-11-131-39/+35
| | | | llvm-svn: 167869
* Adding support to resolve symbols with archive libraries in lldShankar Easwaran2012-11-131-26/+57
| | | | llvm-svn: 167854
* [ELF] Fix -Woverloaded-virtualMichael J. Spencer2012-11-011-1/+1
| | | | llvm-svn: 167246
* Fix cl brokeness.Michael J. Spencer2012-10-313-8/+8
| | | | | | | | | cl is not attempting to complete a templated class when used in this context. The conversion forces this to happen. Thanks to Richard Smith for figuring this out. llvm-svn: 167166
* Add missing include.Michael J. Spencer2012-10-311-0/+1
| | | | llvm-svn: 167165
* This patch changes the following:Sid Manning2012-10-256-124/+207
| | | | | | | | | | * Use conventional naming for KindHandlers. * Add X86 relocation routines. * Use std::function instead of function pointers in _fixupHandler map. * Change _fixupHandler map from std::map to llvm::DenseMap. * Add simple testcase for x86 relocations. llvm-svn: 166700
* This update does the following:Sid Manning2012-10-182-10/+36
| | | | | | | | | | | * Moves enum Scope from DefinedAtom.h to Atom.h * Adds scope method to AbsoluteAtom class * Updates YAML to print scope of AbsoluteAtoms * Update Native Reader/Writer to handle this new, "attribute" * Adds testcase Reviewed and approved by Nick Kledzik llvm-svn: 166189
* * Add relocation reference support for Hexagon and PowerPC.Sid Manning2012-10-096-86/+370
| | | | | | | | | | | - Hexagon has many relocation types, this patch covers just a subset, more will be added. - PowerPC support was added so that we can verify mixed endian environments. * Add some basic test cases * Update ldd-core to accept -endian flag llvm-svn: 165477
* Fix incorrect setting of EI_DATASid Manning2012-10-051-1/+3
| | | | llvm-svn: 165310
* Added missing break in StockSectionChunk constructor.Hemant Kulkarni2012-10-031-3/+2
| | | | | | | | Removed architecture dependent .sbss section creation. Updated test case to show the change in section types and removal of a sbss section. llvm-svn: 165181
* * Return correct size and alignment for common symbols.Sid Manning2012-10-031-4/+4
| | | | llvm-svn: 165170
* Emit symbol tables.Hemant Kulkarni2012-10-011-273/+449
| | | | | | | Reorganize to derive all sections from SectionChunk. Construct section table header from SectionChunk. llvm-svn: 164981
* This change:Sid Manning2012-10-011-9/+29
| | | | | | | | | | * Updates ReaderELF.cpp contentType method to match ELF.h's logic and now handle typeData * Add -arch to ldd-core testdriver * Add testcase to check typeData * Update others to stay in sync with this change. llvm-svn: 164976
* Add case for typeConstant in SectionChunkSid Manning2012-09-261-1/+7
| | | | llvm-svn: 164732
* This patch makes use of recently added relocation reference data. The bulkSid Manning2012-09-251-2/+43
| | | | | | | | | | | | of this is derived from the Mach-O writer. Reviewed by: Nick Kledzik. * Adds loop to SectionChunk::write traverse references calling the writer's fixup handler, applyFixup. * Adds method, ELFWriter::buildAtomToAddressMap to that creates a mapping from an atom to its runtime address. * Adds method, ELFWriter::addressOfAtom to return the runtime address of the atom. llvm-svn: 164618
* Add ELFReference class - parse relocations needed by that class and update ↵Sid Manning2012-09-171-160/+386
| | | | | | DefinedAtom to use the class. Tweak coding style. Add testcase to check relocations. Change was signed-off-by: Michael Spencer llvm-svn: 164027
* ELF support for LLD writer. The writer at present emits ELF header and section Hemant Kulkarni2012-09-146-9/+1126
| | | | | | | | | | table header. Skeleton code for ReferenceKinds. Credits: Doxygen by Michael Spencer. Origianl implementation from Macho by Sidney Manning. Templatization, implementation of section header chunks, string table, ELF header by Hemant Kulkarni. llvm-svn: 163906
* Fix warnings.Michael J. Spencer2012-09-101-5/+1
| | | | llvm-svn: 163573
* Fix warning from -Wshadow. Report errors back to caller rather than callingSid Manning2012-07-271-27/+20
| | | | | | llvm::report_fatal_error. llvm-svn: 160864
* Implement the ELF reader. The original implementation was by Hemant KulkarniSid Manning2012-07-251-7/+526
| | | | | | with subsequent changes to use lower level interfaces done by me. llvm-svn: 160732
* Major refactoring: Remove Platform concept. In its place there are Nick Kledzik2012-05-313-0/+80
now Reader and Writer subclasses for each file format. Each Reader and Writer subclass defines an "options" class which controls how that Reader or Writer operates. llvm-svn: 157774
OpenPOWER on IntegriCloud