summaryrefslogtreecommitdiffstats
path: root/lld/lib/Driver/Drivers.cpp
Commit message (Collapse)AuthorAgeFilesLines
* This is my Driver refactoring patch. Nick Kledzik2013-04-041-303/+0
| | | | | | | | | | | | | | | | | | | | | | | The major changes are: 1) LinkerOptions has been merged into TargetInfo 2) LinkerInvocation has been merged into Driver 3) Drivers no longer convert arguments into an intermediate (core) argument list, but instead create a TargetInfo object and call setter methods on it. This is only how in-process linking would work. That is, you can programmatically set up a TargetInfo object which controls the linking. 4) Lots of tweaks to test suite to work with driver changes 5) Add the DarwinDriver 6) I heavily doxygen commented TargetInfo.h Things to do after this patch is committed: a) Consider renaming TargetInfo, given its new roll. b) Consider pulling the list of input files out of TargetInfo. This will enable in-process clients to create one TargetInfo the re-use it with different input file lists. c) Work out a way for Drivers to format the warnings and error done in core linking. llvm-svn: 178776
* Fix "control reaches end of non-void function" compiling lld on gcc.Andy Gibbs2013-03-191-1/+2
| | | | llvm-svn: 177424
* [lld] remove trailing whitespaceShankar Easwaran2013-03-141-1/+1
| | | | llvm-svn: 177079
* [Driver][GNULD] Lookup .so files and default to dynamic output.Michael J. Spencer2013-02-191-0/+19
| | | | llvm-svn: 175572
* [Core,Driver,ELF] Differentiate static and dynamic executables.Michael J. Spencer2013-02-141-0/+13
| | | | | | | This also adds a simple relocation change for dynamic executables to x86-64 ELF. llvm-svn: 175208
* add merge strings option, this temporarily fixes the problem bringing up ↵Shankar Easwaran2013-02-131-0/+4
| | | | | | helloworld with glibc on x86_64 llvm-svn: 175038
* [Driver] Add -L and -l support.Michael J. Spencer2013-02-071-3/+34
| | | | llvm-svn: 174590
* [Driver] Replace Target with TargetInfo. Simplify LinkerInput.Michael J. Spencer2013-02-071-1/+1
| | | | | | | | This removes Target and moves the functionality it had over to TargetInfo. This also simplifies LinkerInput by removing the InputKind. This will be handled elsewhere. llvm-svn: 174589
* [ELF] Use entry point from LinkerOptions.Michael J. Spencer2013-01-281-3/+0
| | | | | | Patch by Ahmed Bougacha! llvm-svn: 173655
* Move everything over to TargetInfo.Michael J. Spencer2013-01-231-1/+2
| | | | | | | | I really would have liked to split this patch up, but it would greatly complicate the lld-core and lld drivers having to deal with both {Reader,Writer}Option and TargetInfo. llvm-svn: 173217
* Add {,ELF,MachO}TargetInfo.Michael J. Spencer2013-01-221-1/+1
| | | | llvm-svn: 173117
* Replace the 'final' keyword with 'LLVM_FINAL' as GCC 4.6 doesn't supportChandler Carruth2013-01-191-1/+1
| | | | | | | | | | the keyword. If anyone cares deeply about the final optimizations with GCC, we might want to add a version test to the LLVM definition, but I'm perfectly happy with this just only firing under Clang and modern MSVC builds. llvm-svn: 172898
* add noinhibit exec optionShankar Easwaran2013-01-111-0/+4
| | | | llvm-svn: 172204
* [lld] Add support for -mllvm.Michael J. Spencer2013-01-081-0/+27
| | | | | | | There is no way to test this at the moment because the options are not processed until the link starts, and we can't pass an empty file. llvm-svn: 171910
* [lld] Add -emit-yaml option. This outputs yaml instead of a binary.Michael J. Spencer2013-01-071-0/+4
| | | | llvm-svn: 171710
* [Driver] Add -flavor core support. This will be tested by other tests using ↵Michael J. Spencer2013-01-051-0/+17
| | | | | | -flavor core. llvm-svn: 171577
* Fix build issue when building lld against libstdc++ 4.7Andy Gibbs2012-12-221-1/+1
| | | | llvm-svn: 170983
* [Driver] Properly handle -entry for X86 Linux.Michael J. Spencer2012-12-091-1/+2
| | | | llvm-svn: 169718
* [Driver] Add -### support for printing out the core command line.Michael J. Spencer2012-12-091-0/+6
| | | | llvm-svn: 169717
* Remove left over debugging output.Michael J. Spencer2012-12-091-2/+0
| | | | llvm-svn: 169716
* Add the core architecture for the lld driver.Michael J. Spencer2012-12-081-0/+180
This includes selecting which driver to emulate, option parsing, invocation building, and running the link. This currently only supports a very basic subset of ld for x86_64-linux. lld -flavor ld obj.o -o obj or symlink lld as (ld , link, ld64, core) to get the desired behavior without -flavor. llvm-svn: 169659
OpenPOWER on IntegriCloud