summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/ToolChains.cpp
diff options
context:
space:
mode:
authorJustin Lebar <jlebar@google.com>2016-10-08 22:16:12 +0000
committerJustin Lebar <jlebar@google.com>2016-10-08 22:16:12 +0000
commitd3c5d2a4de10d4bdb01937d970f780d38cffb96b (patch)
tree94b91984bf2fd7271899a4c5b89f38a75ab534bc /clang/lib/Driver/ToolChains.cpp
parent2dfbe9a3b4f72489f05b1ab18b39add060f10b86 (diff)
downloadbcm5719-llvm-d3c5d2a4de10d4bdb01937d970f780d38cffb96b.tar.gz
bcm5719-llvm-d3c5d2a4de10d4bdb01937d970f780d38cffb96b.zip
[CUDA] Support <complex> and std::min/max on the device.
Summary: We do this by wrapping <complex> and <algorithm>. Tests are in the test-suite. Reviewers: tra Subscribers: jhen, beanz, cfe-commits, mgorny Differential Revision: https://reviews.llvm.org/D24979 llvm-svn: 283680
Diffstat (limited to 'clang/lib/Driver/ToolChains.cpp')
-rw-r--r--clang/lib/Driver/ToolChains.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/clang/lib/Driver/ToolChains.cpp b/clang/lib/Driver/ToolChains.cpp
index 28233ba1b85..e71aaf36cf5 100644
--- a/clang/lib/Driver/ToolChains.cpp
+++ b/clang/lib/Driver/ToolChains.cpp
@@ -4694,6 +4694,15 @@ void Linux::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs,
void Linux::AddCudaIncludeArgs(const ArgList &DriverArgs,
ArgStringList &CC1Args) const {
+ if (!DriverArgs.hasArg(options::OPT_nobuiltininc)) {
+ // Add cuda_wrappers/* to our system include path. This lets us wrap
+ // standard library headers.
+ SmallString<128> P(getDriver().ResourceDir);
+ llvm::sys::path::append(P, "include");
+ llvm::sys::path::append(P, "cuda_wrappers");
+ addSystemInclude(DriverArgs, CC1Args, P);
+ }
+
if (DriverArgs.hasArg(options::OPT_nocudainc))
return;
OpenPOWER on IntegriCloud