Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | [PECOFF] Handle /machine option before handling all the other options. | Rui Ueyama | 2014-01-31 | 1 | -11/+13 | |
| | | | | | | | | The target machine type affects the meaning of other options, in particular how to mangle symbols. So we want to handle the option first and then parse all the other options. llvm-svn: 200589 | |||||
* | Update for llvm api change. | Rafael Espindola | 2014-01-31 | 1 | -2/+1 | |
| | | | | llvm-svn: 200575 | |||||
* | [PECOFF] Set the correct PE header field value. | Rui Ueyama | 2014-01-31 | 1 | -3/+4 | |
| | | | | | | | The charcateristics field should not have IMAGE_FILE_32BIT_MACHINE bit but have IMAGE_FILE_LARGE_ADDRESS_AWARE bit for PE32+. llvm-svn: 200518 | |||||
* | [PECOFF] Do not emit a section if it's empty. | Rui Ueyama | 2014-01-31 | 1 | -1/+2 | |
| | | | | | | | The PE32+ loader does not seem to like an executable with an empty section, so we should not emit a section if it's empty. llvm-svn: 200514 | |||||
* | Replace magic numbers with enums. | Rui Ueyama | 2014-01-31 | 1 | -1/+1 | |
| | | | | llvm-svn: 200512 | |||||
* | [PECOFF] Default image base address for PE32+ is 0x140000000, not 0x400000. | Rui Ueyama | 2014-01-31 | 1 | -3/+8 | |
| | | | | llvm-svn: 200511 | |||||
* | [ELF] Make private all DynamicTable class fields which are not used in | Simon Atanasyan | 2014-01-30 | 1 | -0/+2 | |
| | | | | | | the descendant classes. llvm-svn: 200467 | |||||
* | Update for llvm api change. | Rafael Espindola | 2014-01-30 | 2 | -13/+9 | |
| | | | | llvm-svn: 200443 | |||||
* | [ELF][Hexagon] typeZeroFillQuick is not associated with bss section. | Shankar Easwaran | 2014-01-29 | 1 | -1/+1 | |
| | | | | | | | We need to increase the memory and the filesize when we add a typeZeroFillQuick atom. llvm-svn: 200369 | |||||
* | [Mips] Declare MipsDynamicTable class in a separate header file. | Simon Atanasyan | 2014-01-28 | 4 | -81/+107 | |
| | | | | llvm-svn: 200328 | |||||
* | [PECOFF] Replace magic numbers with sizeof. | Rui Ueyama | 2014-01-28 | 1 | -3/+4 | |
| | | | | llvm-svn: 200278 | |||||
* | [PECOFF] Implement some relocations for x86-64. | Rui Ueyama | 2014-01-27 | 1 | -19/+40 | |
| | | | | llvm-svn: 200240 | |||||
* | [PECOFF] Implement relocations for x86-64. | Rui Ueyama | 2014-01-27 | 1 | -12/+68 | |
| | | | | llvm-svn: 200185 | |||||
* | [PECOFF] Fix PE/COFF optional header size for PE32+. | Rui Ueyama | 2014-01-27 | 1 | -2/+2 | |
| | | | | | | | The optional header for PE32+ is a bit larger than PE32 because some of its fields are extended to 8 bytes. llvm-svn: 200184 | |||||
* | [PECOFF] Set a proper architecture type to references. | Rui Ueyama | 2014-01-27 | 1 | -1/+27 | |
| | | | | | | | Relocations for x64 object files should have reference type of KindArch::x86_64. llvm-svn: 200183 | |||||
* | Fix trailing whitespace. | Shankar Easwaran | 2014-01-27 | 15 | -297/+297 | |
| | | | | llvm-svn: 200182 | |||||
* | [ELF] Fix comments. | Shankar Easwaran | 2014-01-27 | 6 | -12/+6 | |
| | | | | | | | | | The comments in the files that described the file name as part of each file header ran over 80 columns, which clang-format split over multiple lines. This commit fixes to make them appear properly. llvm-svn: 200181 | |||||
* | [ELF] Make changes to all the targets supported currently | Shankar Easwaran | 2014-01-27 | 38 | -673/+1359 | |
| | | | | | | | | X86_64,X86,PPC,Hexagon,Mips No change in functionality. llvm-svn: 200177 | |||||
* | [ELF] Create Target specific Writers. | Shankar Easwaran | 2014-01-27 | 5 | -75/+110 | |
| | | | | llvm-svn: 200176 | |||||
* | [ELF] Add Target specific Readers. | Shankar Easwaran | 2014-01-27 | 15 | -317/+514 | |
| | | | | | | No change in functionality. llvm-svn: 200175 | |||||
* | [ELF] Separate ELFReader classes for subclassing | Shankar Easwaran | 2014-01-27 | 3 | -28/+107 | |
| | | | | llvm-svn: 200173 | |||||
* | [ELF] Unify interfaces between DynamicFile/ELFFile. | Shankar Easwaran | 2014-01-27 | 2 | -44/+44 | |
| | | | | llvm-svn: 200172 | |||||
* | [ELF] Separate implementation from the class declaration. | Shankar Easwaran | 2014-01-26 | 2 | -588/+611 | |
| | | | | | | | | ELFFile would be a class that rest of the targets would derive from. To keep the implementation clean, separate the implementation from rest of the Header file. llvm-svn: 200168 | |||||
* | [ELF] Rename File.h to ELFFile.h to avoid confusion. | Shankar Easwaran | 2014-01-26 | 7 | -8/+8 | |
| | | | | | | No change in functionality. llvm-svn: 200166 | |||||
* | [ELF] Dont include all targets | Shankar Easwaran | 2014-01-26 | 1 | -3/+0 | |
| | | | | llvm-svn: 200165 | |||||
* | [PECOFF] Emit PE32+ file header. | Rui Ueyama | 2014-01-26 | 1 | -24/+38 | |
| | | | | llvm-svn: 200128 | |||||
* | [PECOFF] Use a shorter name for the parameter. | Rui Ueyama | 2014-01-26 | 1 | -23/+23 | |
| | | | | llvm-svn: 200107 | |||||
* | [PECOFF] Set PE32+ magic value if 64 bit. | Rui Ueyama | 2014-01-26 | 1 | -2/+2 | |
| | | | | llvm-svn: 200106 | |||||
* | [PECOFF] Use a shorter name for the PECOFF writer member. | Rui Ueyama | 2014-01-25 | 1 | -15/+14 | |
| | | | | llvm-svn: 200052 | |||||
* | [PECOFF] Accept /machine:x64 option. | Rui Ueyama | 2014-01-24 | 1 | -3/+4 | |
| | | | | | | | This is the first patch to support PE32+ format, which is the image format to use 64 bit address space on Windows/x86-64. llvm-svn: 200029 | |||||
* | [PECOFF] Use constant instead of magic number. | Rui Ueyama | 2014-01-24 | 1 | -2/+2 | |
| | | | | llvm-svn: 200019 | |||||
* | [ELF] Customize a relocation table output format (rel / rela). | Simon Atanasyan | 2014-01-24 | 4 | -34/+72 | |
| | | | | | | | | | | Add new virtual virtual function `isRelaOutputFormat` to the `ELFLinkingContext` class. Call this function everywhere we need to select a relocation table format. Patch reviewed by Shankar Easwaran and Rui Ueyama. llvm-svn: 199973 | |||||
* | Update for llvm api change. | Rafael Espindola | 2014-01-22 | 1 | -1/+4 | |
| | | | | llvm-svn: 199777 | |||||
* | Update for llvm api change. | Rafael Espindola | 2014-01-21 | 1 | -2/+2 | |
| | | | | llvm-svn: 199752 | |||||
* | [Mips] Emit ELF header for MIPS target. ELF flags set is mostly hardcoded. | Simon Atanasyan | 2014-01-18 | 2 | -0/+23 | |
| | | | | | | | Later we need to improve that solution and build a correct set of flags by merging ELF flags from all input objects. llvm-svn: 199555 | |||||
* | [Mips] Simplify calculations of relocations - replace scatterBits calls | Simon Atanasyan | 2014-01-18 | 1 | -14/+7 | |
| | | | | | | by bitwise AND operator and remove redundant local variables. llvm-svn: 199554 | |||||
* | Fix odd titlecasing and spacing in an error message. | Rui Ueyama | 2014-01-18 | 1 | -2/+2 | |
| | | | | llvm-svn: 199530 | |||||
* | Use auto for readability. No functionality change. | Rui Ueyama | 2014-01-18 | 1 | -9/+8 | |
| | | | | llvm-svn: 199527 | |||||
* | Using "final" as a variable name is a bit confusing in C++11, so rename it. | Rui Ueyama | 2014-01-18 | 1 | -2/+2 | |
| | | | | llvm-svn: 199526 | |||||
* | [Mips] Allocate local GOT entry for a global symbol defined in an | Simon Atanasyan | 2014-01-17 | 1 | -1/+9 | |
| | | | | | | executable file. llvm-svn: 199517 | |||||
* | [Mips] Implement .plt and .got.plt section creation. | Simon Atanasyan | 2014-01-17 | 6 | -3/+182 | |
| | | | | llvm-svn: 199516 | |||||
* | [Mips] Handle R_MIPS_26 relocation. Maintaining of .plt and .got.plt | Simon Atanasyan | 2014-01-17 | 4 | -1/+37 | |
| | | | | | | sections will be implemented later. llvm-svn: 199515 | |||||
* | [Mips] Provide default name of MIPS-specific interpreter. | Simon Atanasyan | 2014-01-17 | 2 | -0/+5 | |
| | | | | llvm-svn: 199514 | |||||
* | Update for llvm api change. | Rafael Espindola | 2014-01-15 | 1 | -3/+3 | |
| | | | | llvm-svn: 199327 | |||||
* | [MachO] Begin support for reading fat binaries. | Joey Gouly | 2014-01-14 | 2 | -23/+60 | |
| | | | | llvm-svn: 199259 | |||||
* | [Mips] Do not forget to initialize a class field. | Simon Atanasyan | 2014-01-14 | 1 | -1/+1 | |
| | | | | llvm-svn: 199241 | |||||
* | [Mips] Calculate gp value only once. | Simon Atanasyan | 2014-01-14 | 1 | -7/+5 | |
| | | | | llvm-svn: 199240 | |||||
* | [Mips] Create and initialize _gp symbol. | Simon Atanasyan | 2014-01-14 | 1 | -0/+7 | |
| | | | | llvm-svn: 199239 | |||||
* | [Mips] Do not store a pointer to the AtomLayout related to the | Simon Atanasyan | 2014-01-14 | 2 | -3/+1 | |
| | | | | | | | _GLOBAL_OFFSET_TABLE_ symbol. We do not use this ponter anywhere after assigning of virtual address. llvm-svn: 199237 | |||||
* | [Mips] Factor out constant represents gp value offset to the | Simon Atanasyan | 2014-01-14 | 2 | -1/+5 | |
| | | | | | | MipsTargetLayout class method. llvm-svn: 199236 |