Skip to content

Commit 7330a00

Browse files
Simplify DPCTL_TARGET_HIP handling using aliases
1 parent 8ab60e4 commit 7330a00

File tree

1 file changed

+16
-12
lines changed

1 file changed

+16
-12
lines changed

CMakeLists.txt

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ set(_dpctl_sycl_target_link_options)
5656

5757
set(_dpctl_sycl_targets)
5858
set(_dpctl_cuda_arch)
59-
set(_dpctl_amd_targets)
6059

6160
if ("x${DPCTL_SYCL_TARGETS}" STREQUAL "x")
6261
if (DPCTL_TARGET_CUDA)
@@ -74,28 +73,33 @@ if ("x${DPCTL_SYCL_TARGETS}" STREQUAL "x")
7473
endif()
7574

7675
if (NOT "x${DPCTL_TARGET_HIP}" STREQUAL "x")
77-
set(_dpctl_amd_targets ${DPCTL_TARGET_HIP})
78-
if(_dpctl_sycl_targets)
79-
set(_dpctl_sycl_targets "amdgcn-amd-amdhsa,${_dpctl_sycl_targets}")
76+
if(DPCTL_TARGET_HIP MATCHES "^gfx")
77+
if(_dpctl_sycl_targets)
78+
set(_dpctl_sycl_targets "amd_gpu_${DPCTL_TARGET_HIP},${_dpctl_sycl_targets}")
79+
else()
80+
set(_dpctl_sycl_targets "amd_gpu_${DPCTL_TARGET_HIP},spir64-unknown-unknown")
81+
endif()
8082
else()
81-
set(_dpctl_sycl_targets "amdgcn-amd-amdhsa,spir64-unknown-unknown")
83+
message(FATAL_ERROR
84+
"Invalid value for DPCTL_TARGET_HIP: \"${DPCTL_TARGET_HIP}\". "
85+
"Expected something starting with 'gfx', e.g. 'gfx1030'."
86+
)
8287
endif()
8388
endif()
8489
else()
85-
set(_dpctl_sycl_targets ${DPCTL_SYCL_TARGETS})
86-
if (NOT "x${DPCTL_TARGET_HIP}" STREQUAL "x")
87-
set(_dpctl_amd_targets ${DPCTL_TARGET_HIP})
90+
if ("${DPCTL_SYCL_TARGETS}" MATCHES "amdgcn-amd-amdhsa")
91+
message(FATAL_ERROR
92+
"Legacy target 'amdgcn-amd-amdhsa' is not supported. "
93+
"Use alias form 'amd_gpu_<arch>' instead."
94+
)
8895
endif()
96+
set(_dpctl_sycl_targets ${DPCTL_SYCL_TARGETS})
8997
endif()
9098

9199
if (_dpctl_sycl_targets)
92100
message(STATUS "Compiling for -fsycl-targets=${_dpctl_sycl_targets}")
93101
list(APPEND _dpctl_sycl_target_compile_options -fsycl-targets=${_dpctl_sycl_targets})
94102
list(APPEND _dpctl_sycl_target_link_options -fsycl-targets=${_dpctl_sycl_targets})
95-
if(_dpctl_amd_targets)
96-
list(APPEND _dpctl_sycl_target_compile_options -Xsycl-target-backend=amdgcn-amd-amdhsa --offload-arch=${_dpctl_amd_targets})
97-
list(APPEND _dpctl_sycl_target_link_options -Xsycl-target-backend=amdgcn-amd-amdhsa --offload-arch=${_dpctl_amd_targets})
98-
endif()
99103
endif()
100104

101105
add_subdirectory(libsyclinterface)

0 commit comments

Comments
 (0)