Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 45b86ef

Browse files
committedOct 3, 2024·
Do not add fcuda-is-device to CC1 when compiling for HIPAMD
1 parent c279604 commit 45b86ef

File tree

2 files changed

+9
-7
lines changed

2 files changed

+9
-7
lines changed
 

‎clang/lib/Driver/ToolChains/HIPAMD.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,8 @@ void HIPAMDToolChain::addClangTargetOptions(
283283
DeviceOffloadingKind == Action::OFK_SYCL) &&
284284
"Only HIP and SYCL offloading kinds are supported for GPUs.");
285285

286-
CC1Args.push_back("-fcuda-is-device");
286+
if (DeviceOffloadingKind != Action::OFK_SYCL)
287+
CC1Args.push_back("-fcuda-is-device");
287288

288289
if (!DriverArgs.hasFlag(options::OPT_fgpu_rdc, options::OPT_fno_gpu_rdc,
289290
false))
+7-6
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
11
// Verify the __CUDA_ARCH__ macro has not been defined when offloading SYCL on NVPTX
22
// RUN: %clangxx -E -dM -fsycl -fsycl-targets=nvptx64-nvidia-cuda -Xsycl-target-backend --offload-arch=sm_80 -nocudalib -fno-sycl-libspirv %s 2>&1 \
3-
// RUN: | FileCheck --check-prefix=CHECK-CUDA-ARCH-MACRO-NVPTX %s
4-
// CHECK-CUDA-ARCH-MACRO-NVPTX-NOT: #define __CUDA_ARCH__ {{[0-9]+}}
5-
3+
// RUN: | FileCheck --check-prefix=CHECK-CUDA-ARCH-MACRO %s
64
// Verify the __CUDA_ARCH__ macro has not been defined when offloading SYCL on AMDGPU
75
// RUN: %clangxx -E -dM -fsycl -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx90a -nogpulib -fno-sycl-libspirv %s 2>&1 \
8-
// RUN: | FileCheck --check-prefix=CHECK-CUDA-ARCH-MACRO-AMDGPU %s
9-
// CHECK-CUDA-ARCH-MACRO-AMDGPU-NOT: #define __CUDA_ARCH__ {{[0-9]+}}
6+
// RUN: | FileCheck --check-prefix=CHECK-CUDA-ARCH-MACRO %s
7+
// CHECK-CUDA-ARCH-MACRO-NOT: #define __CUDA_ARCH__ {{[0-9]+}}
108

119
// Verify that '-fcuda-is-device' is not supplied when offloading SYCL on NVPTX
1210
// RUN: %clangxx -### -fsycl -fsycl-targets=nvptx64-nvidia-cuda -Xsycl-target-backend --offload-arch=sm_80 -nocudalib -fno-sycl-libspirv %s 2>&1 \
1311
// RUN: | FileCheck --check-prefix=CHECK-CUDA-IS-DEVICE %s
14-
// CHECK-CUDA-IS-DEVICE: clang{{.*}} "-cc1" "-triple" "nvptx64-nvidia-cuda"
12+
// Verify that '-fcuda-is-device' is not supplied when offloading SYCL on AMDGPU
13+
// RUN: %clangxx -### -fsycl -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx90a -nogpulib -fno-sycl-libspirv %s 2>&1 \
14+
// RUN: | FileCheck --check-prefix=CHECK-CUDA-IS-DEVICE %s
15+
// CHECK-CUDA-IS-DEVICE: clang{{.*}} "-cc1" "-triple" "amdgcn-amd-amdhsa"
1516
// CHECK-CUDA-IS-DEVICE-NOT: "-fcuda-is-device"
1617
// CHECK-CUDA-IS-DEVICE-SAME: "-fsycl-is-device"

0 commit comments

Comments
 (0)
Please sign in to comment.