[Openmp-commits] [openmp] 935abea - OpenMP: Correctly query location for amdgpu-arch
Matt Arsenault via Openmp-commits
openmp-commits at lists.llvm.org
Mon Nov 29 13:31:43 PST 2021
Author: Matt Arsenault
Date: 2021-11-29T16:31:32-05:00
New Revision: 935abeaace123e5f11792a5175079d974d0a0be8
URL: https://github.com/llvm/llvm-project/commit/935abeaace123e5f11792a5175079d974d0a0be8
DIFF: https://github.com/llvm/llvm-project/commit/935abeaace123e5f11792a5175079d974d0a0be8.diff
LOG: OpenMP: Correctly query location for amdgpu-arch
This was trying to figure out the build path for amdgpu-arch, and
making assumptions about where it is which were not working on my
system. Whether a standalone build or not, we should have a proper
imported target to get the location from.
Added:
Modified:
openmp/libomptarget/plugins/amdgpu/CMakeLists.txt
Removed:
################################################################################
diff --git a/openmp/libomptarget/plugins/amdgpu/CMakeLists.txt b/openmp/libomptarget/plugins/amdgpu/CMakeLists.txt
index 0b830f631e904..a7cca99c51717 100644
--- a/openmp/libomptarget/plugins/amdgpu/CMakeLists.txt
+++ b/openmp/libomptarget/plugins/amdgpu/CMakeLists.txt
@@ -98,27 +98,20 @@ target_link_libraries(
${LDFLAGS_UNDEFINED}
)
-if (LLVM_BINARY_DIR)
- # for in-tree build using LLVM_ENABLE_RUNTIMES
- set(AMDGPU_ARCH_TOOL "${LLVM_BINARY_DIR}/bin/amdgpu-arch")
-elseif (OPENMP_LLVM_TOOLS_DIR)
- set(AMDGPU_ARCH_TOOL "${OPENMP_LLVM_TOOLS_DIR}/amdgpu-arch")
-else()
- set(AMDGPU_ARCH_TOOL "amdgpu-arch")
-endif()
-
# in case of amdgcn, skip running tests if amdgpu-arch was not built or fails
-if (NOT EXISTS "${AMDGPU_ARCH_TOOL}")
+if (NOT TARGET amdgpu-arch)
libomptarget_say("Not generating amdgcn test targets as amdgpu-arch is not found")
return()
endif()
-execute_process(COMMAND "${AMDGPU_ARCH_TOOL}" RESULT_VARIABLE amdgpu_arch_result
- OUTPUT_VARIABLE amdgpu_arch_output)
+get_property(AMDGPU_ARCH_COMMAND TARGET amdgpu-arch PROPERTY LOCATION)
+
+execute_process(COMMAND ${AMDGPU_ARCH_COMMAND} RESULT_VARIABLE amdgpu_arch_result
+ OUTPUT_VARIABLE amdgpu_arch_output)
if (${amdgpu_arch_result})
libomptarget_say("Not generating amdgcn test targets as amdgpu-arch exited with ${amdgpu_arch_result}")
- return()
+else()
+ # Report to the parent scope that we are building a plugin for amdgpu
+ set(LIBOMPTARGET_SYSTEM_TARGETS "${LIBOMPTARGET_SYSTEM_TARGETS} amdgcn-amd-amdhsa" PARENT_SCOPE)
endif()
-# Report to the parent scope that we are building a plugin for amdgpu
-set(LIBOMPTARGET_SYSTEM_TARGETS "${LIBOMPTARGET_SYSTEM_TARGETS} amdgcn-amd-amdhsa" PARENT_SCOPE)
More information about the Openmp-commits
mailing list