Skip to content

Commit d640ff4

Browse files
[SYCL] Don't add include/sycl/ to the system includes path (#15437)
Fixes #6770
1 parent 30578ba commit d640ff4

26 files changed

+46
-57
lines changed

clang/lib/Driver/ToolChains/SYCL.cpp

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1815,22 +1815,18 @@ void SYCLToolChain::AddSYCLIncludeArgs(const clang::driver::Driver &Driver,
18151815
const ArgList &DriverArgs,
18161816
ArgStringList &CC1Args) {
18171817
// Add the SYCL header search locations in the specified order.
1818-
// ../include/sycl
18191818
// ../include/sycl/stl_wrappers
18201819
// ../include
18211820
SmallString<128> IncludePath(Driver.Dir);
18221821
llvm::sys::path::append(IncludePath, "..");
18231822
llvm::sys::path::append(IncludePath, "include");
1824-
SmallString<128> SYCLPath(IncludePath);
1825-
llvm::sys::path::append(SYCLPath, "sycl");
18261823
// This is used to provide our wrappers around STL headers that provide
18271824
// additional functions/template specializations when the user includes those
18281825
// STL headers in their programs (e.g., <complex>).
1829-
SmallString<128> STLWrappersPath(SYCLPath);
1826+
SmallString<128> STLWrappersPath(IncludePath);
1827+
llvm::sys::path::append(STLWrappersPath, "sycl");
18301828
llvm::sys::path::append(STLWrappersPath, "stl_wrappers");
18311829
CC1Args.push_back("-internal-isystem");
1832-
CC1Args.push_back(DriverArgs.MakeArgString(SYCLPath));
1833-
CC1Args.push_back("-internal-isystem");
18341830
CC1Args.push_back(DriverArgs.MakeArgString(STLWrappersPath));
18351831
CC1Args.push_back("-internal-isystem");
18361832
CC1Args.push_back(DriverArgs.MakeArgString(IncludePath));

clang/test/Driver/sycl-device-old-model.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
/// Check "-fsycl-is-device" is passed when compiling for device:
77
// RUN: %clang -### -fsycl-device-only --no-offload-new-driver %s 2>&1 \
88
// RUN: | FileCheck -check-prefix=CHECK-SYCL-DEV %s
9-
// CHECK-SYCL-DEV: "-fsycl-is-device"{{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl" "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include"
9+
// CHECK-SYCL-DEV: "-fsycl-is-device"{{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers" "-internal-isystem" "{{[^"]*}}bin{{[/\\]+}}..{{[/\\]+}}include"
1010

1111
/// Check that "-Wno-sycl-strict" is set on compiler invocation with "-fsycl"
1212
/// or "-fsycl-device-only" or both:

clang/test/Driver/sycl-device.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
// RUN: | FileCheck -check-prefix=CHECK-SYCL-DEV %s
99
// RUN: %clang -### --config=%S/Inputs/empty.cfg -fsycl-device-only %s 2>&1 \
1010
// RUN: | FileCheck -check-prefix=CHECK-SYCL-DEV %s
11-
// CHECK-SYCL-DEV: "-fsycl-is-device"{{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl" "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include"
11+
// CHECK-SYCL-DEV: "-fsycl-is-device"{{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers" "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include"
1212

1313
/// Check that "-Wno-sycl-strict" is set on compiler invocation with "-fsycl"
1414
/// or "-fsycl-device-only" or both:

clang/test/Driver/sycl-int-footer-old-model.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878
// DEP_GEN: clang{{.*}} "-fsycl-is-device"
7979
// DEP_GEN-SAME: "-dependency-file" "[[DEPFILE:.+\.d]]"
8080
// DEP_GEN-SAME: "-MT"
81-
// DEP_GEN-SAME: "-internal-isystem" "{{.*}}{{[/\\]+}}include{{[/\\]+}}sycl"
81+
// DEP_GEN-SAME: "-internal-isystem" "{{.*}}{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"
8282
// DEP_GEN-SAME: "-x" "c++" "[[INPUTFILE:.+\.cpp]]"
8383
// DEP_GEN: clang{{.*}} "-fsycl-is-host"
8484
// DEP_GEN-SAME: "-dependency-file" "[[DEPFILE]]"

clang/test/Driver/sycl-int-footer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
// DEP_GEN: clang{{.*}} "-fsycl-is-device"
6767
// DEP_GEN-SAME: "-dependency-file" "[[DEPFILE:.+\.d]]"
6868
// DEP_GEN-SAME: "-MT"
69-
// DEP_GEN-SAME: "-internal-isystem" "{{.*}}{{[/\\]+}}include{{[/\\]+}}sycl"
69+
// DEP_GEN-SAME: "-internal-isystem" "{{.*}}{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"
7070
// DEP_GEN-SAME: "-x" "c++" "[[INPUTFILE:.+\.cpp]]"
7171
// DEP_GEN: clang{{.*}} "-fsycl-is-host"
7272
// DEP_GEN-SAME: "-dependency-file" "[[DEPFILE]]"

clang/test/Driver/sycl-offload-amdgcn.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
// RUN: -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx906 -nogpulib\
2020
// RUN: -fsycl-libspirv-path=%S/Inputs/SYCL/libspirv.bc %s 2>&1 \
2121
// RUN: | FileCheck -check-prefix=CHK-ACTIONS %s
22-
// CHK-ACTIONS: "-cc1" "-triple" "amdgcn-amd-amdhsa" "-aux-triple" "x86_64-unknown-linux-gnu"{{.*}} "-fsycl-is-device"{{.*}} "-Wno-sycl-strict"{{.*}} "-sycl-std=2020" {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libspirv.bc"{{.*}} "-target-cpu" "gfx906"{{.*}} "-std=c++11"{{.*}}
22+
// CHK-ACTIONS: "-cc1" "-triple" "amdgcn-amd-amdhsa" "-aux-triple" "x86_64-unknown-linux-gnu"{{.*}} "-fsycl-is-device"{{.*}} "-Wno-sycl-strict"{{.*}} "-sycl-std=2020" {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libspirv.bc"{{.*}} "-target-cpu" "gfx906"{{.*}} "-std=c++11"{{.*}}
2323
// CHK-ACTIONS-NOT: "-mllvm -sycl-opt"
2424
// CHK-ACTIONS: clang-offload-wrapper"{{.*}} "-host=x86_64-unknown-linux-gnu" "-compile-opts=--offload-arch=gfx906" "-target=amdgcn" "-kind=sycl"{{.*}}
2525

clang/test/Driver/sycl-offload-header-check.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@
1010
// RUN: %clang -### -fsycl %s 2>&1 | \
1111
// RUN: FileCheck --check-prefix=CHECK-HEADER %s
1212
// CHECK-HEADER: clang{{.*}} "-fsycl-int-header=[[HEADER:.+\.h]]"
13-
// CHECK-HEADER: {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl"
13+
// CHECK-HEADER: {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"
1414
// CHECK-HEADER-NOT: clang{{.*}} "-include" "[[HEADER]]"
1515
// CHECK-HEADER: clang{{.*}} "-include" "{{.*}}_dirname{{.+}}.h"

clang/test/Driver/sycl-offload-intelfpga.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
// RUN: | FileCheck -check-prefix=CHK-HEADERS-INTELFPGA %s
88
// RUN: %clangxx -### -target x86_64-unknown-linux-gnu -fsycl -fsycl-targets=spir64_fpga-unknown-unknown %s 2>&1 \
99
// RUN: | FileCheck -check-prefix=CHK-HEADERS-INTELFPGA %s
10-
// CHK-HEADERS-INTELFPGA: clang{{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl"
10+
// CHK-HEADERS-INTELFPGA: clang{{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"
1111

1212
/// -fintelfpga implies -g and -MMD
1313
// RUN: %clangxx -### -target x86_64-unknown-linux-gnu -fintelfpga -Xshardware %s 2>&1 \

clang/test/Driver/sycl-offload-nvptx.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
// RUN: -fsycl-libspirv-path=%S/Inputs/SYCL/libspirv.bc %s 2>&1 \
1414
// RUN: | FileCheck -check-prefix=CHK-ACTIONS-WIN %s
1515

16-
// CHK-ACTIONS: "-cc1" "-triple" "nvptx64-nvidia-cuda" "-aux-triple" "x86_64-unknown-linux-gnu"{{.*}} "-fsycl-is-device"{{.*}} "-Wno-sycl-strict"{{.*}} "-sycl-std=2020" {{.*}} "-emit-llvm-bc" {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libspirv.bc"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libdevice{{.*}}.10.bc"{{.*}} "-target-sdk-version=[[CUDA_VERSION:[0-9.]+]]"{{.*}} "-target-cpu" "sm_50"{{.*}} "-target-feature" "+ptx42"{{.*}} "-std=c++11"{{.*}}
16+
// CHK-ACTIONS: "-cc1" "-triple" "nvptx64-nvidia-cuda" "-aux-triple" "x86_64-unknown-linux-gnu"{{.*}} "-fsycl-is-device"{{.*}} "-Wno-sycl-strict"{{.*}} "-sycl-std=2020" {{.*}} "-emit-llvm-bc" {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libspirv.bc"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libdevice{{.*}}.10.bc"{{.*}} "-target-sdk-version=[[CUDA_VERSION:[0-9.]+]]"{{.*}} "-target-cpu" "sm_50"{{.*}} "-target-feature" "+ptx42"{{.*}} "-std=c++11"{{.*}}
1717
// CHK-ACTIONS: sycl-post-link{{.*}} "-split=auto"
1818
// CHK-ACTIONS: file-table-tform" "-extract=Code" "-drop_titles"
1919
// CHK-ACTIONS: llvm-foreach" {{.*}} "--" "{{.*}}clang-{{[0-9]+}}"
@@ -23,7 +23,7 @@
2323
// CHK-ACTIONS-NOT: "-mllvm -sycl-opt"
2424
// CHK-ACTIONS: clang-offload-wrapper"{{.*}} "-host=x86_64-unknown-linux-gnu" "-target=nvptx64" "-kind=sycl"{{.*}}
2525

26-
// CHK-ACTIONS-WIN: "-cc1" "-triple" "nvptx64-nvidia-cuda" "-aux-triple" "x86_64-pc-windows-msvc"{{.*}} "-fsycl-is-device"{{.*}} "-Wno-sycl-strict"{{.*}} "-sycl-std=2020" {{.*}} "-emit-llvm-bc" {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libspirv.bc"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libdevice{{.*}}.10.bc"{{.*}} "-target-sdk-version=[[CUDA_VERSION:[0-9.]+]]"{{.*}} "-target-cpu" "sm_50"{{.*}} "-target-feature" "+ptx42"{{.*}}
26+
// CHK-ACTIONS-WIN: "-cc1" "-triple" "nvptx64-nvidia-cuda" "-aux-triple" "x86_64-pc-windows-msvc"{{.*}} "-fsycl-is-device"{{.*}} "-Wno-sycl-strict"{{.*}} "-sycl-std=2020" {{.*}} "-emit-llvm-bc" {{.*}} "-internal-isystem" "{{.*}}bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libspirv.bc"{{.*}} "-mlink-builtin-bitcode" "{{.*}}libdevice{{.*}}.10.bc"{{.*}} "-target-sdk-version=[[CUDA_VERSION:[0-9.]+]]"{{.*}} "-target-cpu" "sm_50"{{.*}} "-target-feature" "+ptx42"{{.*}}
2727
// CHK-ACTIONS-WIN: sycl-post-link{{.*}} "-split=auto"
2828
// CHK-ACTIONS-WIN: file-table-tform" "-extract=Code" "-drop_titles"
2929
// CHK-ACTIONS-WIN: llvm-foreach" {{.*}} "--" "{{.*}}clang-{{[0-9]+}}"

clang/test/Driver/sycl-offload-old-model.c

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -782,14 +782,10 @@
782782
// RUN: %clang -### -fsycl --no-offload-new-driver %s 2>&1 | FileCheck %s -check-prefixes=CHECK-HEADER-DIR
783783
// RUN: %clang_cl -### -fsycl --no-offload-new-driver %s 2>&1 | FileCheck %s -check-prefixes=CHECK-HEADER-DIR
784784
// CHECK-HEADER-DIR: clang{{.*}} "-fsycl-is-device"
785-
// CHECK-HEADER-DIR-SAME: "-internal-isystem" "[[ROOT:[^"]*]]bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl"
786-
// CHECK-HEADER-DIR-NOT: -internal-isystem
787-
// CHECK-HEADER-DIR-SAME: "-internal-isystem" "[[ROOT]]bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"
785+
// CHECK-HEADER-DIR-SAME: "-internal-isystem" "[[ROOT:[^"]*]]bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"
788786
// CHECK-HEADER-DIR-NOT: -internal-isystem
789787
// CHECK-HEADER-DIR-SAME: "-internal-isystem" "[[ROOT]]bin{{[/\\]+}}..{{[/\\]+}}include"
790788
// CHECK-HEADER-DIR: clang{{.*}} "-fsycl-is-host"
791-
// CHECK-HEADER-DIR-SAME: "-internal-isystem" "[[ROOT]]bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl"
792-
// CHECK-HEADER-DIR-NOT: -internal-isystem
793789
// CHECK-HEADER-DIR-SAME: "-internal-isystem" "[[ROOT]]bin{{[/\\]+}}..{{[/\\]+}}include{{[/\\]+}}sycl{{[/\\]+}}stl_wrappers"
794790
// CHECK-HEADER-DIR-NOT: -internal-isystem
795791
// CHECK-HEADER-DIR-SAME: "-internal-isystem" "[[ROOT]]bin{{[/\\]+}}..{{[/\\]+}}include"

0 commit comments

Comments
 (0)