llvm-project/clang/lib/Driver
Peter Zotov e43b741359 Accept absolute paths in the -fuse-ld option.
This patch extends the -fuse-ld option to accept a full path to an executable
and use it verbatim to invoke the linker. There are generally two reasons
to desire this.

The first reason relates to the sad truth is that Clang is retargetable,
Binutils are not.

While any Clang from a binary distribution is sufficient to compile code
for a wide range of architectures and prefixed BFD linkers (e.g.
installed as /usr/bin/arm-none-linux-gnueabi-ld) as well as cross-compiled
libc's (for non-bare-metal targets) are widely available, including on all
Debian derivatives, it is impossible to use them together because
the -fuse-ld= option allows to specify neither a linker prefix nor
a full path to one.

The second reason is linker development, both when porting existing linkers
to new architectures and when working on a new linker such as LLD.

Differential Revision: http://reviews.llvm.org/D17952

llvm-svn: 262996
2016-03-09 05:18:16 +00:00
..
Action.cpp [CUDA] Invoke ptxas and fatbinary during compilation. 2016-01-14 21:41:27 +00:00
CMakeLists.txt Support mingw-w64 and mingw.org toolchains at any install location. 2015-07-02 04:45:27 +00:00
Compilation.cpp Bail on compilation as soon as a job fails. 2016-02-24 21:49:28 +00:00
CrossWindowsToolChain.cpp Driver: tweak CrossWindows sanitizer support 2015-10-29 03:36:38 +00:00
Driver.cpp clang-cl: Enable PCH flags by default. 2016-03-04 21:59:42 +00:00
DriverOptions.cpp Update clang to match llvm r250901. OptTable constructor now takes an ArrayRef. NFC 2015-10-21 16:31:33 +00:00
InputInfo.h Add an Action* member to InputInfo. 2016-01-11 23:15:21 +00:00
Job.cpp clang-cl: Implement initial limited support for precompiled headers. 2016-03-01 23:16:44 +00:00
MSVCToolChain.cpp Fix array index out of bounds 2016-01-27 07:33:50 +00:00
MinGWToolChain.cpp Revert r253898 and r253899, this breaks mingw compilation on openSUSE. 2016-01-12 10:41:20 +00:00
Multilib.cpp [Driver] Remove `else` after `return` 2015-10-12 14:32:57 +00:00
Phases.cpp Reapply "Change -save-temps to emit unoptimized bitcode files." 2014-12-21 07:00:00 +00:00
SanitizerArgs.cpp [libFuzzer] allow -fsanitize-coverage=0 (disables all coverage) 2016-03-02 19:16:54 +00:00
Tool.cpp Roll-back r250822. 2015-10-20 13:23:58 +00:00
ToolChain.cpp Accept absolute paths in the -fuse-ld option. 2016-03-09 05:18:16 +00:00
ToolChains.cpp Introduce -fembed-bitcode driver option 2016-03-01 01:07:58 +00:00
ToolChains.h Introduce -fembed-bitcode driver option 2016-03-01 01:07:58 +00:00
Tools.cpp Switch krait to use -mcpu=cortex-a15 for assembler tool invocations. 2016-03-04 20:57:22 +00:00
Tools.h [clang-cl] /EHc should not effect functions with explicit exception specifications 2016-02-29 01:40:36 +00:00
Types.cpp Fix remaining Clang-tidy readability-redundant-control-flow warnings; other minor fixes. 2016-02-12 22:53:10 +00:00