summaryrefslogtreecommitdiffstats
path: root/lld/ELF/Config.h
Commit message (Collapse)AuthorAgeFilesLines
...
* ELF2: Define a utility function to handle simple command line options.Rui Ueyama2015-10-071-2/+2
| | | | llvm-svn: 249592
* [ELF2] -z now option implementedGeorge Rimar2015-10-071-0/+1
| | | | | | | | When generating an executable or shared library, mark it to tell the dynamic linker to resolve all symbols when the program is started, or when the shared library is linked to using dlopen, instead of deferring function call resolution to the point when the function is first called. Differential Revision: http://reviews.llvm.org/D13468 llvm-svn: 249551
* [ELF2] Handle -m optionDenis Protivensky2015-10-071-0/+11
| | | | | | | | | Parse and apply emulation given with -m option. Check input files to match ELF type and machine architecture provided with -m. Differential Revision: http://reviews.llvm.org/D13055 llvm-svn: 249529
* ELF2: Implement OUTPUT() linker script directive.Rui Ueyama2015-10-071-1/+1
| | | | llvm-svn: 249491
* [ELF2] Address r249428 post comit review. Style + test trim.Davide Italiano2015-10-061-1/+1
| | | | llvm-svn: 249451
* [ELF2] Implement --{enable, disable}-new-dtags options.Davide Italiano2015-10-061-0/+1
| | | | llvm-svn: 249428
* [ELF2] Add DT_INIT and DT_FINI dynamic table entriesIgor Kudrin2015-10-051-0/+2
| | | | | | | | | | | | | | The entries are added if there are "_init" or "_fini" entries in the symbol table respectively. According to the behavior of ld, entries are inserted even for undefined symbols. Symbol names can be overridden by using -init and -fini command line switches. If used, these switches neither add new symbol table entries nor require those symbols to be resolved. Differential Revision: http://reviews.llvm.org/D13385 llvm-svn: 249297
* [ELF2] Implement --no-undefined flag.George Rimar2015-10-011-0/+1
| | | | llvm-svn: 249064
* ELF2: Add -soname option.Rui Ueyama2015-10-011-0/+1
| | | | llvm-svn: 249058
* [ELF2] Add --[no-]whole-archive command line switchesIgor Kudrin2015-10-011-0/+1
| | | | | | | | | | | | | | | | | Summary: If --whole-archive is used, all symbols from the following archives are added to the output. --no-whole-archive restores default behavior. These switches can be used multiple times. NB. We have to keep an ArchiveFile instance within SymbolTable even if --whole-archive mode is active since it can be a thin archive which contains just names of external files. In that case actual memory buffers for the archive members will be stored within the File member of ArchiveFile class. Reviewers: rafael, ruiu Subscribers: grimar, llvm-commits Projects: #lld Differential Revision: http://reviews.llvm.org/D13286 llvm-svn: 249045
* [ELF2] Add -Bstatic and -Bdynamic command line switchesIgor Kudrin2015-10-011-0/+1
| | | | | | | | | | | | | | | | | Summary: These switches affect library searching for '-l' which follow them. Synonym forms are also supported: * -dy and -call_shared for -Bdynamic switch * -dn, -non_shared and -static for -Bstatic switch Reviewers: rafael, ruiu Subscribers: emaste, llvm-commits Projects: #lld Differential Revision: http://reviews.llvm.org/D13238 llvm-svn: 249029
* ELF2: Do not set default values that will always be overwritten.Rui Ueyama2015-09-301-7/+7
| | | | | | | These member variables are overwritten unconditionally by Driver, so setting default values would be confusing. llvm-svn: 248922
* ELF2: Sort Config member variables. NFC.Rui Ueyama2015-09-291-5/+5
| | | | llvm-svn: 248838
* ELF2: Use 'a.out' as default output file name.Rui Ueyama2015-09-291-1/+1
| | | | llvm-svn: 248831
* [ELF2] Implemented --entry flag.Rui Ueyama2015-09-291-0/+1
| | | | | | Patch from George Rimar! llvm-svn: 248806
* Implement --allow-multiple-definition.Rafael Espindola2015-09-281-0/+1
| | | | | | Patch by George Rimar! llvm-svn: 248733
* [ELF2] Add --sysroot command line switchIgor Kudrin2015-09-281-0/+1
| | | | | | | | | | | | Reviewers: rafael, ruiu Subscribers: llvm-commits Projects: #lld Differential Revision: http://reviews.llvm.org/D13209 llvm-svn: 248715
* Trying to fix the windows build.Rafael Espindola2015-09-281-0/+2
| | | | llvm-svn: 248709
* Add support for -L and -l command line switches.Rafael Espindola2015-09-281-0/+1
| | | | | | Patch by Igor Kudrin! llvm-svn: 248708
* Implement --noinhibit-exec.Rafael Espindola2015-09-251-0/+1
| | | | | | Patch by George Rimar! llvm-svn: 248605
* [ELF2] Add support for -discard-none.Davide Italiano2015-09-241-0/+1
| | | | | | Differential Revision: http://reviews.llvm.org/D13083 llvm-svn: 248499
* Implement --export-dynamic.Rafael Espindola2015-09-221-0/+1
| | | | llvm-svn: 248347
* [ELF2] Implement support for -discard-locals.Davide Italiano2015-09-201-0/+1
| | | | | | This is not on by default, but it may make sense to change it in future. llvm-svn: 248133
* [ELF2] Initial support for local symbols.Davide Italiano2015-09-161-0/+1
| | | | | | | | | | Symbol table is now populated correctly, but some fields are missing, they'll be added in the future. This patch also adds --discard-all flag, which was the default behavior until now. Differential Revision: http://reviews.llvm.org/D12874 llvm-svn: 247849
* Start adding support for creating shared libraries.Rafael Espindola2015-09-111-0/+1
| | | | | | | | | | They are not fully functional yet, but this implements enough support for lld itself to read them. With that, delete the .so binary we were using for tests and start eating our own dog food. llvm-svn: 247487
* Implement -rpath.Rafael Espindola2015-09-111-0/+1
| | | | llvm-svn: 247475
* Implement the -dynamic-linker option.Rafael Espindola2015-09-111-0/+1
| | | | | | | With this dynamic executables can be executed with just ./t instead of /lib64/ld-2.20.so ./t llvm-svn: 247446
* Make these headers as being c++.Rafael Espindola2015-08-141-1/+1
| | | | llvm-svn: 245050
* [ELF2] Add a new ELF linker based on the new PE/COFF linker.Michael J. Spencer2015-07-241-0/+27
| | | | | | Differential Revision: http://reviews.llvm.org/D11188 llvm-svn: 243161
* Revert ELF port. Posting to mailing list.Michael J. Spencer2015-07-141-40/+0
| | | | llvm-svn: 242118
* Initial ELF port.Michael J. Spencer2015-07-131-0/+40
This is a direct port of the new PE/COFF linker to ELF. It can take a single object file and generate a valid executable that executes at the first byte in the text section. llvm-svn: 242088
OpenPOWER on IntegriCloud