summaryrefslogtreecommitdiffstats
path: root/llvm/lib/MC/ELFObjectWriter.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix relocations with renamed symbols.Rafael Espindola2010-10-281-5/+6
| | | | llvm-svn: 117575
* Aliases defined with .symver should copy the binding of the symbols they alias.Rafael Espindola2010-10-281-6/+21
| | | | | | | Move the existing patching for undefined symbols so that all the patching is done in the same function. llvm-svn: 117570
* Implement R_X86_64_DTPOFF32.Rafael Espindola2010-10-281-0/+3
| | | | llvm-svn: 117548
* Implement TLSLD.Rafael Espindola2010-10-281-0/+4
| | | | llvm-svn: 117547
* Implement DTPOFF.Rafael Espindola2010-10-281-0/+4
| | | | llvm-svn: 117546
* Implement TLSLDM.Rafael Espindola2010-10-281-0/+4
| | | | llvm-svn: 117544
* Implement VK_GOTNTPOFF and switch RelocNeedsGOT to use VariantKind.Rafael Espindola2010-10-281-15/+16
| | | | llvm-svn: 117543
* Add support for R_386_TLS_GD, R_386_TLS_LE_32, R_386_TLS_IE and R_386_TLS_LE.Rafael Espindola2010-10-271-0/+17
| | | | llvm-svn: 117494
* Implement R_X86_64_GOTTPOFF, R_X86_64_TLSGD and R_X86_64_TPOFF32.Rafael Espindola2010-10-271-0/+12
| | | | llvm-svn: 117481
* Replace pointer arithmetic with StringRef::substr.Benjamin Kramer2010-10-271-6/+5
| | | | llvm-svn: 117477
* Produce an error for an invalid use of .symver.Rafael Espindola2010-10-271-0/+5
| | | | llvm-svn: 117462
* Symbols defined as the difference of other two end up in the ABS section.Rafael Espindola2010-10-271-5/+2
| | | | llvm-svn: 117451
* Add support for the .symver directive. This is really ugly, but most of it isRafael Espindola2010-10-271-14/+56
| | | | | | contained in the ELF object writer. llvm-svn: 117448
* Move more logic to isInSymtab and simplify.Rafael Espindola2010-10-271-21/+19
| | | | llvm-svn: 117447
* Add support for emitting ARM file attributes.Rafael Espindola2010-10-251-3/+1
| | | | llvm-svn: 117275
* Add X86::reloc_global_offset_table and use it to have a single place whereRafael Espindola2010-10-241-4/+5
| | | | | | we check for _GLOBAL_OFFSET_TABLE_. llvm-svn: 117241
* Making the e_machine configurable by the target backend in ELFObjectWriter.Wesley Peck2010-10-221-5/+9
| | | | llvm-svn: 117099
* Small cleanups and fixes in preparation for fixing _GLOBAL_OFFSET_TABLE_.Rafael Espindola2010-10-191-7/+11
| | | | llvm-svn: 116848
* Implement R_386_GOT32.Rafael Espindola2010-10-181-0/+3
| | | | llvm-svn: 116744
* Relocate with .bss instead of using the symbol. Matches gas behavior.Rafael Espindola2010-10-181-0/+3
| | | | llvm-svn: 116741
* Reenable assert.Rafael Espindola2010-10-181-1/+2
| | | | llvm-svn: 116738
* Produce ELF::R_386_GOTPC relocations.Rafael Espindola2010-10-181-1/+6
| | | | llvm-svn: 116728
* Make the bots happy.Rafael Espindola2010-10-181-1/+3
| | | | llvm-svn: 116719
* Produce a R_386_PLT32 when needed. Moved the default cases of switches to theRafael Espindola2010-10-181-7/+13
| | | | | | start for consistency. llvm-svn: 116715
* Handle GOTOFF correctly on i386.Rafael Espindola2010-10-181-5/+15
| | | | llvm-svn: 116711
* Fix a typo and silence unused variable warnings in -Asserts build.Benjamin Kramer2010-10-171-4/+2
| | | | llvm-svn: 116685
* Add a MCObjectFormat class so that code common to all targets that use aRafael Espindola2010-10-161-16/+5
| | | | | | | | | | | | single object format can be shared. This also adds support for mov zed+(bar-foo), %eax on ELF and COFF targets. llvm-svn: 116675
* Refactor alias handling to AliasedSymbol.Rafael Espindola2010-10-151-13/+15
| | | | llvm-svn: 116600
* Refactor code a bit and avoid creating unnecessary entries in the stringRafael Espindola2010-10-151-19/+19
| | | | | | map. llvm-svn: 116579
* Remove some code duplication.Rafael Espindola2010-10-141-49/+18
| | | | llvm-svn: 116484
* Another case of 256 sections not being enough :-)Rafael Espindola2010-10-061-1/+1
| | | | llvm-svn: 115858
* Get binding and visibility info from the the alias, but Type from the symbolRafael Espindola2010-10-061-3/+25
| | | | | | being aliased. llvm-svn: 115836
* If a symbol is global, reloc against it even if it is in a mergeable section.Rafael Espindola2010-10-061-3/+3
| | | | llvm-svn: 115817
* Make sure weak symbols are listed after the local ones.Rafael Espindola2010-10-061-2/+3
| | | | llvm-svn: 115795
* Correctly handle GOTPCREL relocations.Rafael Espindola2010-10-061-3/+6
| | | | llvm-svn: 115793
* Use a relocation against the symbol if it is a PLT and the symbol is in anotherRafael Espindola2010-10-051-2/+11
| | | | | | section. Common because of linkonce sections. llvm-svn: 115718
* Implement more alias cases.Rafael Espindola2010-10-051-0/+11
| | | | llvm-svn: 115699
* 256 sections should be enough for anyone...Rafael Espindola2010-10-051-1/+1
| | | | llvm-svn: 115687
* Don't crash in a strange .size directive.Rafael Espindola2010-10-051-5/+15
| | | | llvm-svn: 115684
* Implement a simple alias case and refactor the code a bit so that theRafael Espindola2010-10-051-17/+35
| | | | | | isInSymtab and isLocal logic in the two loops don't get easily out of sync. llvm-svn: 115643
* Produce a undefined reference to _GLOBAL_OFFSET_TABLE_ when needed.Rafael Espindola2010-10-051-1/+25
| | | | llvm-svn: 115623
* On ELF we need to know which symbols are used in relocations to decide ifRafael Espindola2010-10-051-23/+44
| | | | | | | they should be in the symbol table or not. Instead of "guessing", just compute the symbol table after the relocations are known. llvm-svn: 115619
* Implement ELF::R_X86_64_GOTPCREL.Rafael Espindola2010-10-041-0/+3
| | | | llvm-svn: 115547
* Move isFixupKindX86PCRel.Rafael Espindola2010-10-041-12/+12
| | | | llvm-svn: 115545
* Produce a R_X86_64_PLT32 when needed.Rafael Espindola2010-10-041-1/+10
| | | | llvm-svn: 115541
* Produce a R_X86_64_GOT32 when needed.Rafael Espindola2010-10-041-1/+12
| | | | llvm-svn: 115537
* Include the section address in the computation of the relocation.Rafael Espindola2010-10-041-1/+8
| | | | llvm-svn: 115509
* Correctly compute the relocation when it is not in the first fragment.Rafael Espindola2010-10-041-1/+1
| | | | llvm-svn: 115506
* Implement a very basic PIC case.Rafael Espindola2010-10-031-0/+7
| | | | llvm-svn: 115454
* Factor some logic into ShouldRelocOnSymbol. This simplifies the code andRafael Espindola2010-09-301-38/+31
| | | | | | | fixes some cases where we were producing relocations with at symbol that should use a section instead. llvm-svn: 115194
OpenPOWER on IntegriCloud