Skip to content

Commit 79b7ab5

Browse files
Simplify DPCTL_TARGET_HIP handling using aliases
1 parent 184814d commit 79b7ab5

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
@@ -53,7 +53,6 @@ set(_dpctl_sycl_target_link_options)
5353

5454
set(_dpctl_sycl_targets)
5555
set(_dpctl_cuda_arch)
56-
set(_dpctl_amd_targets)
5756
if ("x${DPCTL_SYCL_TARGETS}" STREQUAL "x")
5857
if (NOT "x${DPCTL_TARGET_CUDA}" STREQUAL "x")
5958
if (DPCTL_TARGET_CUDA STREQUAL "ON")
@@ -70,28 +69,33 @@ if ("x${DPCTL_SYCL_TARGETS}" STREQUAL "x")
7069
endif()
7170

7271
if (NOT "x${DPCTL_TARGET_HIP}" STREQUAL "x")
73-
set(_dpctl_amd_targets ${DPCTL_TARGET_HIP})
74-
if(_dpctl_sycl_targets)
75-
set(_dpctl_sycl_targets "amdgcn-amd-amdhsa,${_dpctl_sycl_targets}")
72+
if(DPCTL_TARGET_HIP MATCHES "^gfx")
73+
if(_dpctl_sycl_targets)
74+
set(_dpctl_sycl_targets "amd_gpu_${DPCTL_TARGET_HIP},${_dpctl_sycl_targets}")
75+
else()
76+
set(_dpctl_sycl_targets "amd_gpu_${DPCTL_TARGET_HIP},spir64-unknown-unknown")
77+
endif()
7678
else()
77-
set(_dpctl_sycl_targets "amdgcn-amd-amdhsa,spir64-unknown-unknown")
79+
message(FATAL_ERROR
80+
"Invalid value for DPCTL_TARGET_HIP: \"${DPCTL_TARGET_HIP}\". "
81+
"Expected something starting with 'gfx', e.g. 'gfx1030'."
82+
)
7883
endif()
7984
endif()
8085
else()
81-
set(_dpctl_sycl_targets ${DPCTL_SYCL_TARGETS})
82-
if (NOT "x${DPCTL_TARGET_HIP}" STREQUAL "x")
83-
set(_dpctl_amd_targets ${DPCTL_TARGET_HIP})
86+
if ("${DPCTL_SYCL_TARGETS}" MATCHES "amdgcn-amd-amdhsa")
87+
message(FATAL_ERROR
88+
"Legacy target 'amdgcn-amd-amdhsa' is not supported. "
89+
"Use alias form 'amd_gpu_<arch>' instead."
90+
)
8491
endif()
92+
set(_dpctl_sycl_targets ${DPCTL_SYCL_TARGETS})
8593
endif()
8694

8795
if (_dpctl_sycl_targets)
8896
message(STATUS "Compiling for -fsycl-targets=${_dpctl_sycl_targets}")
8997
list(APPEND _dpctl_sycl_target_compile_options -fsycl-targets=${_dpctl_sycl_targets})
9098
list(APPEND _dpctl_sycl_target_link_options -fsycl-targets=${_dpctl_sycl_targets})
91-
if(_dpctl_amd_targets)
92-
list(APPEND _dpctl_sycl_target_compile_options -Xsycl-target-backend=amdgcn-amd-amdhsa --offload-arch=${_dpctl_amd_targets})
93-
list(APPEND _dpctl_sycl_target_link_options -Xsycl-target-backend=amdgcn-amd-amdhsa --offload-arch=${_dpctl_amd_targets})
94-
endif()
9599
endif()
96100

97101
add_subdirectory(libsyclinterface)

0 commit comments

Comments
 (0)