diff options
author | Artem Belevich <tra@google.com> | 2015-11-17 22:28:40 +0000 |
---|---|---|
committer | Artem Belevich <tra@google.com> | 2015-11-17 22:28:40 +0000 |
commit | 5e2a3ecd48de772e65c4bef2439669390f870f48 (patch) | |
tree | e02157d468bbb7adc3e4a1e20d79efb2a5176f4f /clang/lib/Driver/Compilation.cpp | |
parent | e6e30d5e884af25e8fbe842c2480d5bdf529cfd0 (diff) | |
download | llvm-5e2a3ecd48de772e65c4bef2439669390f870f48.zip llvm-5e2a3ecd48de772e65c4bef2439669390f870f48.tar.gz llvm-5e2a3ecd48de772e65c4bef2439669390f870f48.tar.bz2 |
[CUDA] use -aux-triple to pass target triple of opposite side of compilation
Clang needs to know target triple for both sides of compilation so that
preprocessor macros and target builtins from both sides are available.
This change augments Compilation class to carry information about
toolchains used during different CUDA compilation passes and refactors
BuildActions to use it when it constructs CUDA jobs.
Removed DeviceTriple from CudaHostAction/CudaDeviceAction as it's no
longer needed.
Differential Revision: http://reviews.llvm.org/D13144
llvm-svn: 253385
Diffstat (limited to 'clang/lib/Driver/Compilation.cpp')
-rw-r--r-- | clang/lib/Driver/Compilation.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Driver/Compilation.cpp b/clang/lib/Driver/Compilation.cpp index 101d1fc..e4af2a6 100644 --- a/clang/lib/Driver/Compilation.cpp +++ b/clang/lib/Driver/Compilation.cpp @@ -24,8 +24,9 @@ using namespace llvm::opt; Compilation::Compilation(const Driver &D, const ToolChain &_DefaultToolChain, InputArgList *_Args, DerivedArgList *_TranslatedArgs) - : TheDriver(D), DefaultToolChain(_DefaultToolChain), Args(_Args), - TranslatedArgs(_TranslatedArgs), Redirects(nullptr), + : TheDriver(D), DefaultToolChain(_DefaultToolChain), + CudaHostToolChain(&DefaultToolChain), CudaDeviceToolChain(nullptr), + Args(_Args), TranslatedArgs(_TranslatedArgs), Redirects(nullptr), ForDiagnostics(false) {} Compilation::~Compilation() { |