[Offload][NFC] Various minor changes to Offload CMake (#189029)
Summary: Most of these just remove some redundancy or rename `openmp` -> `offload` where the variable is purely internal.
This commit is contained in:
parent
9238b0f765
commit
15bfc06b6b
@ -49,10 +49,6 @@ list(INSERT CMAKE_MODULE_PATH 0
|
||||
"${LLVM_COMMON_CMAKE_UTILS}/Modules"
|
||||
)
|
||||
|
||||
set(OPENMP_ENABLE_WERROR ${LLVM_ENABLE_WERROR})
|
||||
# If building in tree, we honor the same install suffix LLVM uses.
|
||||
set(OPENMP_INSTALL_LIBDIR "lib${LLVM_LIBDIR_SUFFIX}")
|
||||
|
||||
set(OPENMP_TEST_C_COMPILER_default "${LLVM_TOOLS_BINARY_DIR}/clang${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
set(OPENMP_TEST_CXX_COMPILER_default "${LLVM_TOOLS_BINARY_DIR}/clang++${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
set(OPENMP_TEST_Fortran_COMPILER_default "${LLVM_TOOLS_BINARY_DIR}/flang${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
@ -128,11 +124,8 @@ if(LIBOMPTARGET_PLUGINS_TO_BUILD STREQUAL "all")
|
||||
set(LIBOMPTARGET_PLUGINS_TO_BUILD ${LIBOMPTARGET_ALL_PLUGIN_TARGETS})
|
||||
endif()
|
||||
|
||||
# Add host if not already in LIBOMPTARGET_PLUGINS_TO_BUILD
|
||||
list(FIND LIBOMPTARGET_PLUGINS_TO_BUILD "host" FOUND_HOST)
|
||||
if(FOUND_HOST EQUAL -1)
|
||||
list(APPEND LIBOMPTARGET_PLUGINS_TO_BUILD "host")
|
||||
endif()
|
||||
list(APPEND LIBOMPTARGET_PLUGINS_TO_BUILD "host")
|
||||
list(REMOVE_DUPLICATES LIBOMPTARGET_PLUGINS_TO_BUILD)
|
||||
|
||||
if(NOT (CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64)|(ppc64le)|(aarch64)$"
|
||||
AND CMAKE_SYSTEM_NAME MATCHES "Linux"))
|
||||
|
||||
@ -30,41 +30,22 @@ endif()
|
||||
################################################################################
|
||||
# Looking for NVIDIA GPUs...
|
||||
################################################################################
|
||||
set(LIBOMPTARGET_DEP_CUDA_ARCH "sm_35")
|
||||
|
||||
if(TARGET nvptx-arch)
|
||||
get_property(LIBOMPTARGET_NVPTX_ARCH TARGET nvptx-arch PROPERTY LOCATION)
|
||||
else()
|
||||
find_program(LIBOMPTARGET_NVPTX_ARCH NAMES nvptx-arch
|
||||
PATHS ${LLVM_TOOLS_BINARY_DIR})
|
||||
endif()
|
||||
|
||||
if(LIBOMPTARGET_NVPTX_ARCH)
|
||||
execute_process(COMMAND ${LIBOMPTARGET_NVPTX_ARCH}
|
||||
if(LIBOMPTARGET_OFFLOAD_ARCH)
|
||||
execute_process(COMMAND ${LIBOMPTARGET_OFFLOAD_ARCH} "--only=nvptx"
|
||||
OUTPUT_VARIABLE LIBOMPTARGET_NVPTX_ARCH_OUTPUT
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
string(REPLACE "\n" ";" nvptx_arch_list "${LIBOMPTARGET_NVPTX_ARCH_OUTPUT}")
|
||||
if(nvptx_arch_list)
|
||||
set(LIBOMPTARGET_FOUND_NVIDIA_GPU TRUE)
|
||||
set(LIBOMPTARGET_NVPTX_DETECTED_ARCH_LIST "${nvptx_arch_list}")
|
||||
list(GET nvptx_arch_list 0 LIBOMPTARGET_DEP_CUDA_ARCH)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
################################################################################
|
||||
# Looking for AMD GPUs...
|
||||
################################################################################
|
||||
|
||||
if(TARGET amdgpu-arch)
|
||||
get_property(LIBOMPTARGET_AMDGPU_ARCH TARGET amdgpu-arch PROPERTY LOCATION)
|
||||
else()
|
||||
find_program(LIBOMPTARGET_AMDGPU_ARCH NAMES amdgpu-arch
|
||||
PATHS ${LLVM_TOOLS_BINARY_DIR})
|
||||
endif()
|
||||
|
||||
if(LIBOMPTARGET_AMDGPU_ARCH)
|
||||
execute_process(COMMAND ${LIBOMPTARGET_AMDGPU_ARCH}
|
||||
if(LIBOMPTARGET_OFFLOAD_ARCH)
|
||||
execute_process(COMMAND ${LIBOMPTARGET_OFFLOAD_ARCH} "--only=amdgpu"
|
||||
OUTPUT_VARIABLE LIBOMPTARGET_AMDGPU_ARCH_OUTPUT
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
string(REPLACE "\n" ";" amdgpu_arch_list "${LIBOMPTARGET_AMDGPU_ARCH_OUTPUT}")
|
||||
@ -97,4 +78,4 @@ if(LIBOMPTARGET_OFFLOAD_ARCH)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(OPENMP_PTHREAD_LIB ${LLVM_PTHREAD_LIB})
|
||||
set(OFFLOAD_PTHREAD_LIB ${LLVM_PTHREAD_LIB})
|
||||
|
||||
@ -2,14 +2,14 @@
|
||||
set(ENABLE_CHECK_TARGETS TRUE)
|
||||
|
||||
if (TARGET FileCheck)
|
||||
set(OPENMP_FILECHECK_EXECUTABLE ${LLVM_TOOLS_BINARY_DIR}/FileCheck)
|
||||
set(OFFLOAD_FILECHECK_EXECUTABLE ${LLVM_TOOLS_BINARY_DIR}/FileCheck)
|
||||
else()
|
||||
message(STATUS "Cannot find 'FileCheck'.")
|
||||
message(WARNING "The check targets will not be available!")
|
||||
set(ENABLE_CHECK_TARGETS FALSE)
|
||||
endif()
|
||||
|
||||
set(OPENMP_NOT_EXECUTABLE ${LLVM_TOOLS_BINARY_DIR}/not)
|
||||
set(OFFLOAD_NOT_EXECUTABLE ${LLVM_TOOLS_BINARY_DIR}/not)
|
||||
set(OFFLOAD_DEVICE_INFO_EXECUTABLE ${LLVM_RUNTIME_OUTPUT_INTDIR}/llvm-offload-device-info)
|
||||
set(OFFLOAD_TBLGEN_EXECUTABLE ${LLVM_RUNTIME_OUTPUT_INTDIR}/offload-tblgen)
|
||||
|
||||
@ -77,25 +77,20 @@ function(add_offload_testsuite target comment)
|
||||
cmake_parse_arguments(ARG "EXCLUDE_FROM_CHECK_ALL" "" "DEPENDS;ARGS" ${ARGN})
|
||||
# EXCLUDE_FROM_CHECK_ALL excludes the test ${target} out of check-offload.
|
||||
if (NOT ARG_EXCLUDE_FROM_CHECK_ALL)
|
||||
# Register the testsuites and depends for the check-offload rule.
|
||||
set_property(GLOBAL APPEND PROPERTY OPENMP_LIT_TESTSUITES ${ARG_UNPARSED_ARGUMENTS})
|
||||
set_property(GLOBAL APPEND PROPERTY OPENMP_LIT_DEPENDS ${ARG_DEPENDS})
|
||||
set_property(GLOBAL APPEND PROPERTY OFFLOAD_LIT_TESTSUITES ${ARG_UNPARSED_ARGUMENTS})
|
||||
set_property(GLOBAL APPEND PROPERTY OFFLOAD_LIT_DEPENDS ${ARG_DEPENDS})
|
||||
endif()
|
||||
|
||||
if (ARG_EXCLUDE_FROM_CHECK_ALL)
|
||||
add_lit_testsuite(${target}
|
||||
${comment}
|
||||
${ARG_UNPARSED_ARGUMENTS}
|
||||
EXCLUDE_FROM_CHECK_ALL
|
||||
DEPENDS clang FileCheck not ${ARG_DEPENDS}
|
||||
ARGS ${ARG_ARGS}
|
||||
)
|
||||
else()
|
||||
add_lit_testsuite(${target}
|
||||
${comment}
|
||||
${ARG_UNPARSED_ARGUMENTS}
|
||||
DEPENDS clang FileCheck not ${ARG_DEPENDS}
|
||||
ARGS ${ARG_ARGS}
|
||||
)
|
||||
set(extra_args)
|
||||
if(ARG_EXCLUDE_FROM_CHECK_ALL)
|
||||
list(APPEND extra_args EXCLUDE_FROM_CHECK_ALL)
|
||||
endif()
|
||||
|
||||
add_lit_testsuite(${target}
|
||||
${comment}
|
||||
${ARG_UNPARSED_ARGUMENTS}
|
||||
${extra_args}
|
||||
DEPENDS clang FileCheck not ${ARG_DEPENDS}
|
||||
ARGS ${ARG_ARGS}
|
||||
)
|
||||
endfunction()
|
||||
|
||||
@ -39,7 +39,7 @@ function(add_target_library target_name lib_name)
|
||||
target_include_directories(${target_name} PUBLIC ${common_dir}/include
|
||||
${common_bin_dir}/include)
|
||||
target_link_libraries(${target_name} PRIVATE
|
||||
PluginCommon ${OPENMP_PTHREAD_LIB})
|
||||
PluginCommon ${OFFLOAD_PTHREAD_LIB})
|
||||
|
||||
target_compile_definitions(${target_name} PRIVATE TARGET_NAME=${lib_name})
|
||||
target_compile_definitions(${target_name} PRIVATE
|
||||
|
||||
@ -24,7 +24,6 @@ target_include_directories(omptarget.rtl.level_zero PRIVATE
|
||||
${LIBOMPTARGET_INCLUDE_DIR}
|
||||
${LIBOMPTARGET_DEP_LEVEL_ZERO_INCLUDE_DIR}
|
||||
${LIBOMPTARGET_LLVM_INCLUDE_DIRS}
|
||||
${LIBOMPTARGET_OMP_HEADER_DIR}
|
||||
)
|
||||
|
||||
if (EXISTS ${LIBOMPTARGET_DEP_LEVEL_ZERO_LIBRARY} AND NOT "level_zero" IN_LIST LIBOMPTARGET_DLOPEN_PLUGINS)
|
||||
|
||||
@ -9,7 +9,7 @@ config.test_openmp_flags = "@OPENMP_TEST_OPENMP_FLAGS@"
|
||||
config.test_extra_flags = "@OPENMP_TEST_FLAGS@"
|
||||
config.cuda_path = "@CUDA_ROOT@"
|
||||
config.cuda_libdir = "@CUDA_LIBDIR@"
|
||||
config.cuda_test_arch = "@LIBOMPTARGET_DEP_CUDA_ARCH@"
|
||||
config.cuda_test_arch = "@LIBOMPTARGET_NVPTX_DETECTED_ARCH_LIST@"
|
||||
config.amdgpu_test_arch = "@LIBOMPTARGET_AMDGPU_DETECTED_ARCH_LIST@"
|
||||
config.libomptarget_obj_root = "@CMAKE_CURRENT_BINARY_DIR@/@CURRENT_TARGET@"
|
||||
config.library_dir = "@LIBOMPTARGET_LIBRARY_DIR@"
|
||||
@ -21,8 +21,8 @@ config.llvm_lib_directory = "@LIBOMPTARGET_LLVM_LIBRARY_DIR@"
|
||||
config.operating_system = "@CMAKE_SYSTEM_NAME@"
|
||||
config.libomptarget_all_targets = "@LIBOMPTARGET_ALL_TARGETS@".split()
|
||||
config.libomptarget_current_target = "@CURRENT_TARGET@"
|
||||
config.libomptarget_filecheck = "@OPENMP_FILECHECK_EXECUTABLE@"
|
||||
config.libomptarget_not = "@OPENMP_NOT_EXECUTABLE@"
|
||||
config.libomptarget_filecheck = "@OFFLOAD_FILECHECK_EXECUTABLE@"
|
||||
config.libomptarget_not = "@OFFLOAD_NOT_EXECUTABLE@"
|
||||
config.offload_device_info = "@OFFLOAD_DEVICE_INFO_EXECUTABLE@"
|
||||
config.libomptarget_debug = @LIBOMPTARGET_DEBUG@
|
||||
config.has_libomptarget_ompt = @LIBOMPTARGET_OMPT_SUPPORT@
|
||||
|
||||
@ -1,15 +1,13 @@
|
||||
set(OPENMP_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE PATH
|
||||
set(OFFLOAD_TOOLS_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}" CACHE PATH
|
||||
"Path for binary subdirectory (defaults to '${CMAKE_INSTALL_BINDIR}')")
|
||||
mark_as_advanced(OPENMP_TOOLS_INSTALL_DIR)
|
||||
mark_as_advanced(OFFLOAD_TOOLS_INSTALL_DIR)
|
||||
|
||||
# Move these macros to AddOpenMP if such a CMake module is ever created.
|
||||
|
||||
macro(add_openmp_tool name)
|
||||
llvm_add_tool(OPENMP ${ARGV})
|
||||
macro(add_offload_tool name)
|
||||
llvm_add_tool(OFFLOAD ${ARGV})
|
||||
endmacro()
|
||||
|
||||
macro(add_openmp_tool_symlink name)
|
||||
llvm_add_tool_symlink(OPENMP ${ARGV})
|
||||
macro(add_offload_tool_symlink name)
|
||||
llvm_add_tool_symlink(OFFLOAD ${ARGV})
|
||||
endmacro()
|
||||
|
||||
add_subdirectory(deviceinfo)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
message(STATUS "Building the llvm-offload-device-info tool")
|
||||
|
||||
add_openmp_tool(llvm-offload-device-info llvm-offload-device-info.cpp)
|
||||
add_offload_tool(llvm-offload-device-info llvm-offload-device-info.cpp)
|
||||
|
||||
llvm_update_compile_flags(llvm-offload-device-info)
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
message(STATUS "Building the llvm-omp-kernel-replay tool")
|
||||
|
||||
add_openmp_tool(llvm-omp-kernel-replay llvm-omp-kernel-replay.cpp)
|
||||
add_offload_tool(llvm-omp-kernel-replay llvm-omp-kernel-replay.cpp)
|
||||
|
||||
llvm_update_compile_flags(llvm-omp-kernel-replay)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user