summaryrefslogtreecommitdiffstats
path: root/lld/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* [PECOFF] Handle /machine option before handling all the other options.Rui Ueyama2014-01-311-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 Espindola2014-01-311-2/+1
| | | | llvm-svn: 200575
* [PECOFF] Set the correct PE header field value.Rui Ueyama2014-01-311-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 Ueyama2014-01-311-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 Ueyama2014-01-311-1/+1
| | | | llvm-svn: 200512
* [PECOFF] Default image base address for PE32+ is 0x140000000, not 0x400000.Rui Ueyama2014-01-311-3/+8
| | | | llvm-svn: 200511
* [ELF] Make private all DynamicTable class fields which are not used inSimon Atanasyan2014-01-301-0/+2
| | | | | | the descendant classes. llvm-svn: 200467
* Update for llvm api change.Rafael Espindola2014-01-302-13/+9
| | | | llvm-svn: 200443
* [ELF][Hexagon] typeZeroFillQuick is not associated with bss section.Shankar Easwaran2014-01-291-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 Atanasyan2014-01-284-81/+107
| | | | llvm-svn: 200328
* [PECOFF] Replace magic numbers with sizeof.Rui Ueyama2014-01-281-3/+4
| | | | llvm-svn: 200278
* [PECOFF] Implement some relocations for x86-64.Rui Ueyama2014-01-271-19/+40
| | | | llvm-svn: 200240
* [PECOFF] Implement relocations for x86-64.Rui Ueyama2014-01-271-12/+68
| | | | llvm-svn: 200185
* [PECOFF] Fix PE/COFF optional header size for PE32+.Rui Ueyama2014-01-271-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 Ueyama2014-01-271-1/+27
| | | | | | | Relocations for x64 object files should have reference type of KindArch::x86_64. llvm-svn: 200183
* Fix trailing whitespace.Shankar Easwaran2014-01-2715-297/+297
| | | | llvm-svn: 200182
* [ELF] Fix comments.Shankar Easwaran2014-01-276-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 currentlyShankar Easwaran2014-01-2738-673/+1359
| | | | | | | | X86_64,X86,PPC,Hexagon,Mips No change in functionality. llvm-svn: 200177
* [ELF] Create Target specific Writers.Shankar Easwaran2014-01-275-75/+110
| | | | llvm-svn: 200176
* [ELF] Add Target specific Readers.Shankar Easwaran2014-01-2715-317/+514
| | | | | | No change in functionality. llvm-svn: 200175
* [ELF] Separate ELFReader classes for subclassingShankar Easwaran2014-01-273-28/+107
| | | | llvm-svn: 200173
* [ELF] Unify interfaces between DynamicFile/ELFFile.Shankar Easwaran2014-01-272-44/+44
| | | | llvm-svn: 200172
* [ELF] Separate implementation from the class declaration.Shankar Easwaran2014-01-262-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 Easwaran2014-01-267-8/+8
| | | | | | No change in functionality. llvm-svn: 200166
* [ELF] Dont include all targetsShankar Easwaran2014-01-261-3/+0
| | | | llvm-svn: 200165
* [PECOFF] Emit PE32+ file header.Rui Ueyama2014-01-261-24/+38
| | | | llvm-svn: 200128
* [PECOFF] Use a shorter name for the parameter.Rui Ueyama2014-01-261-23/+23
| | | | llvm-svn: 200107
* [PECOFF] Set PE32+ magic value if 64 bit.Rui Ueyama2014-01-261-2/+2
| | | | llvm-svn: 200106
* [PECOFF] Use a shorter name for the PECOFF writer member.Rui Ueyama2014-01-251-15/+14
| | | | llvm-svn: 200052
* [PECOFF] Accept /machine:x64 option.Rui Ueyama2014-01-241-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 Ueyama2014-01-241-2/+2
| | | | llvm-svn: 200019
* [ELF] Customize a relocation table output format (rel / rela).Simon Atanasyan2014-01-244-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 Espindola2014-01-221-1/+4
| | | | llvm-svn: 199777
* Update for llvm api change.Rafael Espindola2014-01-211-2/+2
| | | | llvm-svn: 199752
* [Mips] Emit ELF header for MIPS target. ELF flags set is mostly hardcoded.Simon Atanasyan2014-01-182-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 callsSimon Atanasyan2014-01-181-14/+7
| | | | | | by bitwise AND operator and remove redundant local variables. llvm-svn: 199554
* Fix odd titlecasing and spacing in an error message.Rui Ueyama2014-01-181-2/+2
| | | | llvm-svn: 199530
* Use auto for readability. No functionality change.Rui Ueyama2014-01-181-9/+8
| | | | llvm-svn: 199527
* Using "final" as a variable name is a bit confusing in C++11, so rename it.Rui Ueyama2014-01-181-2/+2
| | | | llvm-svn: 199526
* [Mips] Allocate local GOT entry for a global symbol defined in anSimon Atanasyan2014-01-171-1/+9
| | | | | | executable file. llvm-svn: 199517
* [Mips] Implement .plt and .got.plt section creation.Simon Atanasyan2014-01-176-3/+182
| | | | llvm-svn: 199516
* [Mips] Handle R_MIPS_26 relocation. Maintaining of .plt and .got.pltSimon Atanasyan2014-01-174-1/+37
| | | | | | sections will be implemented later. llvm-svn: 199515
* [Mips] Provide default name of MIPS-specific interpreter.Simon Atanasyan2014-01-172-0/+5
| | | | llvm-svn: 199514
* Update for llvm api change.Rafael Espindola2014-01-151-3/+3
| | | | llvm-svn: 199327
* [MachO] Begin support for reading fat binaries.Joey Gouly2014-01-142-23/+60
| | | | llvm-svn: 199259
* [Mips] Do not forget to initialize a class field.Simon Atanasyan2014-01-141-1/+1
| | | | llvm-svn: 199241
* [Mips] Calculate gp value only once.Simon Atanasyan2014-01-141-7/+5
| | | | llvm-svn: 199240
* [Mips] Create and initialize _gp symbol.Simon Atanasyan2014-01-141-0/+7
| | | | llvm-svn: 199239
* [Mips] Do not store a pointer to the AtomLayout related to theSimon Atanasyan2014-01-142-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 theSimon Atanasyan2014-01-142-1/+5
| | | | | | MipsTargetLayout class method. llvm-svn: 199236
OpenPOWER on IntegriCloud