Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Fix relocations with renamed symbols. | Rafael Espindola | 2010-10-28 | 1 | -5/+6 | |
| | | | | llvm-svn: 117575 | |||||
* | Aliases defined with .symver should copy the binding of the symbols they alias. | Rafael Espindola | 2010-10-28 | 1 | -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 Espindola | 2010-10-28 | 1 | -0/+3 | |
| | | | | llvm-svn: 117548 | |||||
* | Implement TLSLD. | Rafael Espindola | 2010-10-28 | 1 | -0/+4 | |
| | | | | llvm-svn: 117547 | |||||
* | Implement DTPOFF. | Rafael Espindola | 2010-10-28 | 1 | -0/+4 | |
| | | | | llvm-svn: 117546 | |||||
* | Implement TLSLDM. | Rafael Espindola | 2010-10-28 | 1 | -0/+4 | |
| | | | | llvm-svn: 117544 | |||||
* | Implement VK_GOTNTPOFF and switch RelocNeedsGOT to use VariantKind. | Rafael Espindola | 2010-10-28 | 1 | -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 Espindola | 2010-10-27 | 1 | -0/+17 | |
| | | | | llvm-svn: 117494 | |||||
* | Implement R_X86_64_GOTTPOFF, R_X86_64_TLSGD and R_X86_64_TPOFF32. | Rafael Espindola | 2010-10-27 | 1 | -0/+12 | |
| | | | | llvm-svn: 117481 | |||||
* | Replace pointer arithmetic with StringRef::substr. | Benjamin Kramer | 2010-10-27 | 1 | -6/+5 | |
| | | | | llvm-svn: 117477 | |||||
* | Produce an error for an invalid use of .symver. | Rafael Espindola | 2010-10-27 | 1 | -0/+5 | |
| | | | | llvm-svn: 117462 | |||||
* | Symbols defined as the difference of other two end up in the ABS section. | Rafael Espindola | 2010-10-27 | 1 | -5/+2 | |
| | | | | llvm-svn: 117451 | |||||
* | Add support for the .symver directive. This is really ugly, but most of it is | Rafael Espindola | 2010-10-27 | 1 | -14/+56 | |
| | | | | | | contained in the ELF object writer. llvm-svn: 117448 | |||||
* | Move more logic to isInSymtab and simplify. | Rafael Espindola | 2010-10-27 | 1 | -21/+19 | |
| | | | | llvm-svn: 117447 | |||||
* | Add support for emitting ARM file attributes. | Rafael Espindola | 2010-10-25 | 1 | -3/+1 | |
| | | | | llvm-svn: 117275 | |||||
* | Add X86::reloc_global_offset_table and use it to have a single place where | Rafael Espindola | 2010-10-24 | 1 | -4/+5 | |
| | | | | | | we check for _GLOBAL_OFFSET_TABLE_. llvm-svn: 117241 | |||||
* | Making the e_machine configurable by the target backend in ELFObjectWriter. | Wesley Peck | 2010-10-22 | 1 | -5/+9 | |
| | | | | llvm-svn: 117099 | |||||
* | Small cleanups and fixes in preparation for fixing _GLOBAL_OFFSET_TABLE_. | Rafael Espindola | 2010-10-19 | 1 | -7/+11 | |
| | | | | llvm-svn: 116848 | |||||
* | Implement R_386_GOT32. | Rafael Espindola | 2010-10-18 | 1 | -0/+3 | |
| | | | | llvm-svn: 116744 | |||||
* | Relocate with .bss instead of using the symbol. Matches gas behavior. | Rafael Espindola | 2010-10-18 | 1 | -0/+3 | |
| | | | | llvm-svn: 116741 | |||||
* | Reenable assert. | Rafael Espindola | 2010-10-18 | 1 | -1/+2 | |
| | | | | llvm-svn: 116738 | |||||
* | Produce ELF::R_386_GOTPC relocations. | Rafael Espindola | 2010-10-18 | 1 | -1/+6 | |
| | | | | llvm-svn: 116728 | |||||
* | Make the bots happy. | Rafael Espindola | 2010-10-18 | 1 | -1/+3 | |
| | | | | llvm-svn: 116719 | |||||
* | Produce a R_386_PLT32 when needed. Moved the default cases of switches to the | Rafael Espindola | 2010-10-18 | 1 | -7/+13 | |
| | | | | | | start for consistency. llvm-svn: 116715 | |||||
* | Handle GOTOFF correctly on i386. | Rafael Espindola | 2010-10-18 | 1 | -5/+15 | |
| | | | | llvm-svn: 116711 | |||||
* | Fix a typo and silence unused variable warnings in -Asserts build. | Benjamin Kramer | 2010-10-17 | 1 | -4/+2 | |
| | | | | llvm-svn: 116685 | |||||
* | Add a MCObjectFormat class so that code common to all targets that use a | Rafael Espindola | 2010-10-16 | 1 | -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 Espindola | 2010-10-15 | 1 | -13/+15 | |
| | | | | llvm-svn: 116600 | |||||
* | Refactor code a bit and avoid creating unnecessary entries in the string | Rafael Espindola | 2010-10-15 | 1 | -19/+19 | |
| | | | | | | map. llvm-svn: 116579 | |||||
* | Remove some code duplication. | Rafael Espindola | 2010-10-14 | 1 | -49/+18 | |
| | | | | llvm-svn: 116484 | |||||
* | Another case of 256 sections not being enough :-) | Rafael Espindola | 2010-10-06 | 1 | -1/+1 | |
| | | | | llvm-svn: 115858 | |||||
* | Get binding and visibility info from the the alias, but Type from the symbol | Rafael Espindola | 2010-10-06 | 1 | -3/+25 | |
| | | | | | | being aliased. llvm-svn: 115836 | |||||
* | If a symbol is global, reloc against it even if it is in a mergeable section. | Rafael Espindola | 2010-10-06 | 1 | -3/+3 | |
| | | | | llvm-svn: 115817 | |||||
* | Make sure weak symbols are listed after the local ones. | Rafael Espindola | 2010-10-06 | 1 | -2/+3 | |
| | | | | llvm-svn: 115795 | |||||
* | Correctly handle GOTPCREL relocations. | Rafael Espindola | 2010-10-06 | 1 | -3/+6 | |
| | | | | llvm-svn: 115793 | |||||
* | Use a relocation against the symbol if it is a PLT and the symbol is in another | Rafael Espindola | 2010-10-05 | 1 | -2/+11 | |
| | | | | | | section. Common because of linkonce sections. llvm-svn: 115718 | |||||
* | Implement more alias cases. | Rafael Espindola | 2010-10-05 | 1 | -0/+11 | |
| | | | | llvm-svn: 115699 | |||||
* | 256 sections should be enough for anyone... | Rafael Espindola | 2010-10-05 | 1 | -1/+1 | |
| | | | | llvm-svn: 115687 | |||||
* | Don't crash in a strange .size directive. | Rafael Espindola | 2010-10-05 | 1 | -5/+15 | |
| | | | | llvm-svn: 115684 | |||||
* | Implement a simple alias case and refactor the code a bit so that the | Rafael Espindola | 2010-10-05 | 1 | -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 Espindola | 2010-10-05 | 1 | -1/+25 | |
| | | | | llvm-svn: 115623 | |||||
* | On ELF we need to know which symbols are used in relocations to decide if | Rafael Espindola | 2010-10-05 | 1 | -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 Espindola | 2010-10-04 | 1 | -0/+3 | |
| | | | | llvm-svn: 115547 | |||||
* | Move isFixupKindX86PCRel. | Rafael Espindola | 2010-10-04 | 1 | -12/+12 | |
| | | | | llvm-svn: 115545 | |||||
* | Produce a R_X86_64_PLT32 when needed. | Rafael Espindola | 2010-10-04 | 1 | -1/+10 | |
| | | | | llvm-svn: 115541 | |||||
* | Produce a R_X86_64_GOT32 when needed. | Rafael Espindola | 2010-10-04 | 1 | -1/+12 | |
| | | | | llvm-svn: 115537 | |||||
* | Include the section address in the computation of the relocation. | Rafael Espindola | 2010-10-04 | 1 | -1/+8 | |
| | | | | llvm-svn: 115509 | |||||
* | Correctly compute the relocation when it is not in the first fragment. | Rafael Espindola | 2010-10-04 | 1 | -1/+1 | |
| | | | | llvm-svn: 115506 | |||||
* | Implement a very basic PIC case. | Rafael Espindola | 2010-10-03 | 1 | -0/+7 | |
| | | | | llvm-svn: 115454 | |||||
* | Factor some logic into ShouldRelocOnSymbol. This simplifies the code and | Rafael Espindola | 2010-09-30 | 1 | -38/+31 | |
| | | | | | | | fixes some cases where we were producing relocations with at symbol that should use a section instead. llvm-svn: 115194 |