forked from OSchip/llvm-project
74a7c5dc16
logic to select an alternate target based on the executable it was called as. For instance, if you symlink i686-linux-android-gcc to clang and invoke it, the driver will act as though it were called with another argument ("-target i686-linux-android"). This leads to visible effects even in syntax-only compilations (like the ANDROID preprocessor symbol being defined). This behavior is not replicated for tool invocations--for instance, clang::createInvocationFromCommandLine will not choose an alternate target based on ArgList[0]. This means that configurations stored in compilation databases aren't accurately replayed. This patch separates the logic for selecting a mode flag and target from the executable name into a new member function on ToolChain. It should have no functional effects (but will allow other code to reuse the target/mode selection logic). Patch by Luke Zarko! llvm-svn: 248592 |
||
---|---|---|
.. | ||
Action.cpp | ||
CMakeLists.txt | ||
Compilation.cpp | ||
CrossWindowsToolChain.cpp | ||
Driver.cpp | ||
DriverOptions.cpp | ||
InputInfo.h | ||
Job.cpp | ||
MSVCToolChain.cpp | ||
Makefile | ||
MinGWToolChain.cpp | ||
Multilib.cpp | ||
Phases.cpp | ||
SanitizerArgs.cpp | ||
Tool.cpp | ||
ToolChain.cpp | ||
ToolChains.cpp | ||
ToolChains.h | ||
Tools.cpp | ||
Tools.h | ||
Types.cpp |