aboutsummaryrefslogtreecommitdiff
path: root/openmp
diff options
context:
space:
mode:
authorJohannes Doerfert <johannes@jdoerfert.de>2023-11-29 07:57:01 -0800
committerGitHub <noreply@github.com>2023-11-29 07:57:01 -0800
commitdb96a9c3b7f1855a586c23328bfa073dde6f1352 (patch)
treeca6c7b6a528b124e9a61b4d3c8a5d9be1d3ca955 /openmp
parent672b3d097464becb6e0077ee49a1117ea9bd8238 (diff)
downloadllvm-db96a9c3b7f1855a586c23328bfa073dde6f1352.zip
llvm-db96a9c3b7f1855a586c23328bfa073dde6f1352.tar.gz
llvm-db96a9c3b7f1855a586c23328bfa073dde6f1352.tar.bz2
[OpenMP][NFC] Flatten plugin-nextgen/common folder sturcture (#73725)
For historic reasons we had it setup that there was ` plugin-nextgen/common/PluginInterface/<sources + headers>` which is not what we do anywhere else. Now it looks like the rest: ``` plugin-nextgen/common/include/<headers> plugin-nextgen/common/src/<sources> ``` As part of this, `dlwrap.h` was moved into common/include (as `DLWrap.h`) since it is exclusively used by the plugins.
Diffstat (limited to 'openmp')
-rw-r--r--openmp/libomptarget/plugins-nextgen/CMakeLists.txt2
-rw-r--r--openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt2
-rw-r--r--openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp2
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/CMakeLists.txt91
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/PluginInterface/CMakeLists.txt98
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/include/DLWrap.h (renamed from openmp/libomptarget/include/dlwrap.h)8
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.h)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/include/JIT.h (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/JIT.h)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/include/MemoryManager.h (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/MemoryManager.h)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.h)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/include/RPC.h (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/RPC.h)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/src/GlobalHandler.cpp (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.cpp)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/src/JIT.cpp (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/JIT.cpp)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.cpp)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/src/RPC.cpp (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/RPC.cpp)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.cpp (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/Utils/ELF.cpp)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.h (renamed from openmp/libomptarget/plugins-nextgen/common/PluginInterface/Utils/ELF.h)0
-rw-r--r--openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt2
-rw-r--r--openmp/libomptarget/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp2
19 files changed, 99 insertions, 108 deletions
diff --git a/openmp/libomptarget/plugins-nextgen/CMakeLists.txt b/openmp/libomptarget/plugins-nextgen/CMakeLists.txt
index a27dd0a..af2e5ef 100644
--- a/openmp/libomptarget/plugins-nextgen/CMakeLists.txt
+++ b/openmp/libomptarget/plugins-nextgen/CMakeLists.txt
@@ -47,7 +47,7 @@ if(CMAKE_SYSTEM_PROCESSOR MATCHES "${tmachine}$")
LINK_LIBS
PRIVATE
- PluginInterface
+ PluginCommon
${LIBOMPTARGET_DEP_LIBFFI_LIBRARIES}
${OPENMP_PTHREAD_LIB}
diff --git a/openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt b/openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt
index af967bc..bbf8c0a 100644
--- a/openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt
+++ b/openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt
@@ -80,7 +80,7 @@ add_llvm_library(omptarget.rtl.amdgpu SHARED
LINK_LIBS
PRIVATE
- PluginInterface
+ PluginCommon
${LIBOMPTARGET_DEP_LIBRARIES}
${OPENMP_PTHREAD_LIB}
${LDFLAGS_UNDEFINED}
diff --git a/openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp b/openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp
index faeb4ea..cb82180 100644
--- a/openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp
+++ b/openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp
@@ -15,7 +15,7 @@
#include "Shared/Debug.h"
-#include "dlwrap.h"
+#include "DLWrap.h"
#include "hsa.h"
#include "hsa_ext_amd.h"
#include <memory>
diff --git a/openmp/libomptarget/plugins-nextgen/common/CMakeLists.txt b/openmp/libomptarget/plugins-nextgen/common/CMakeLists.txt
index f0645d0..5b332ed 100644
--- a/openmp/libomptarget/plugins-nextgen/common/CMakeLists.txt
+++ b/openmp/libomptarget/plugins-nextgen/common/CMakeLists.txt
@@ -10,5 +10,94 @@
#
##===----------------------------------------------------------------------===##
+# NOTE: Don't try to build `PluginInterface` using `add_llvm_library` because we
+# don't want to export `PluginInterface` while `add_llvm_library` requires that.
+add_library(PluginCommon OBJECT
+ src/PluginInterface.cpp
+ src/GlobalHandler.cpp
+ src/JIT.cpp
+ src/RPC.cpp
+ src/Utils/ELF.cpp
+)
+
+# Only enable JIT for those targets that LLVM can support.
+string(TOUPPER "${LLVM_TARGETS_TO_BUILD}" TargetsSupported)
+foreach(Target ${TargetsSupported})
+ target_compile_definitions(PluginCommon PRIVATE "LIBOMPTARGET_JIT_${Target}")
+endforeach()
+
+# This is required when using LLVM libraries.
+llvm_update_compile_flags(PluginCommon)
+
+if (LLVM_LINK_LLVM_DYLIB)
+ set(llvm_libs LLVM)
+else()
+ llvm_map_components_to_libnames(llvm_libs
+ ${LLVM_TARGETS_TO_BUILD}
+ AggressiveInstCombine
+ Analysis
+ BinaryFormat
+ BitReader
+ BitWriter
+ CodeGen
+ Core
+ Extensions
+ InstCombine
+ Instrumentation
+ IPO
+ IRReader
+ Linker
+ MC
+ Object
+ Passes
+ Remarks
+ ScalarOpts
+ Support
+ Target
+ TargetParser
+ TransformUtils
+ Vectorize
+ )
+endif()
+
+target_link_libraries(PluginCommon
+ PUBLIC
+ ${llvm_libs}
+)
+
+# Include the RPC server from the `libc` project if availible.
+if(TARGET llvmlibc_rpc_server AND ${LIBOMPTARGET_GPU_LIBC_SUPPORT})
+ target_link_libraries(PluginCommon PRIVATE llvmlibc_rpc_server)
+ target_compile_definitions(PluginCommon PRIVATE LIBOMPTARGET_RPC_SUPPORT)
+elseif(${LIBOMPTARGET_GPU_LIBC_SUPPORT})
+ find_library(llvmlibc_rpc_server NAMES llvmlibc_rpc_server
+ PATHS ${LIBOMPTARGET_LLVM_LIBRARY_DIR} NO_DEFAULT_PATH)
+ if(llvmlibc_rpc_server)
+ target_link_libraries(PluginCommon PRIVATE llvmlibc_rpc_server)
+ target_compile_definitions(PluginCommon PRIVATE LIBOMPTARGET_RPC_SUPPORT)
+ endif()
+endif()
+
+if ((OMPT_TARGET_DEFAULT) AND (LIBOMPTARGET_OMPT_SUPPORT))
+ target_link_libraries(PluginCommon PUBLIC OMPT)
+endif()
+
+# Define the TARGET_NAME and DEBUG_PREFIX.
+target_compile_definitions(PluginCommon PRIVATE
+ TARGET_NAME="PluginInterface"
+ DEBUG_PREFIX="PluginInterface"
+)
+
+target_include_directories(PluginCommon
+ PRIVATE
+ ${LIBOMPTARGET_INCLUDE_DIR}
+ PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/include
+)
+
+set_target_properties(PluginCommon PROPERTIES
+ POSITION_INDEPENDENT_CODE ON
+ CXX_VISIBILITY_PRESET protected)
+
add_subdirectory(OMPT)
-add_subdirectory(PluginInterface)
+
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/CMakeLists.txt b/openmp/libomptarget/plugins-nextgen/common/PluginInterface/CMakeLists.txt
deleted file mode 100644
index 84a7dc8..0000000
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/CMakeLists.txt
+++ /dev/null
@@ -1,98 +0,0 @@
-##===----------------------------------------------------------------------===##
-#
-# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-# See https://llvm.org/LICENSE.txt for license information.
-# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-#
-##===----------------------------------------------------------------------===##
-#
-# Common parts which can be used by all plugins
-#
-##===----------------------------------------------------------------------===##
-
-# NOTE: Don't try to build `PluginInterface` using `add_llvm_library` because we
-# don't want to export `PluginInterface` while `add_llvm_library` requires that.
-add_library(PluginInterface OBJECT
- PluginInterface.cpp
- GlobalHandler.cpp
- JIT.cpp
- RPC.cpp
- Utils/ELF.cpp
-)
-
-# Only enable JIT for those targets that LLVM can support.
-string(TOUPPER "${LLVM_TARGETS_TO_BUILD}" TargetsSupported)
-foreach(Target ${TargetsSupported})
- target_compile_definitions(PluginInterface PRIVATE "LIBOMPTARGET_JIT_${Target}")
-endforeach()
-
-# This is required when using LLVM libraries.
-llvm_update_compile_flags(PluginInterface)
-
-if (LLVM_LINK_LLVM_DYLIB)
- set(llvm_libs LLVM)
-else()
- llvm_map_components_to_libnames(llvm_libs
- ${LLVM_TARGETS_TO_BUILD}
- AggressiveInstCombine
- Analysis
- BinaryFormat
- BitReader
- BitWriter
- CodeGen
- Core
- Extensions
- InstCombine
- Instrumentation
- IPO
- IRReader
- Linker
- MC
- Object
- Passes
- Remarks
- ScalarOpts
- Support
- Target
- TargetParser
- TransformUtils
- Vectorize
- )
-endif()
-
-target_link_libraries(PluginInterface
- PUBLIC
- ${llvm_libs}
-)
-
-# Include the RPC server from the `libc` project if availible.
-if(TARGET llvmlibc_rpc_server AND ${LIBOMPTARGET_GPU_LIBC_SUPPORT})
- target_link_libraries(PluginInterface PRIVATE llvmlibc_rpc_server)
- target_compile_definitions(PluginInterface PRIVATE LIBOMPTARGET_RPC_SUPPORT)
-elseif(${LIBOMPTARGET_GPU_LIBC_SUPPORT})
- find_library(llvmlibc_rpc_server NAMES llvmlibc_rpc_server
- PATHS ${LIBOMPTARGET_LLVM_LIBRARY_DIR} NO_DEFAULT_PATH)
- if(llvmlibc_rpc_server)
- target_link_libraries(PluginInterface PRIVATE llvmlibc_rpc_server)
- target_compile_definitions(PluginInterface PRIVATE LIBOMPTARGET_RPC_SUPPORT)
- endif()
-endif()
-
-if ((OMPT_TARGET_DEFAULT) AND (LIBOMPTARGET_OMPT_SUPPORT))
- target_link_libraries(PluginInterface PUBLIC OMPT)
-endif()
-
-# Define the TARGET_NAME and DEBUG_PREFIX.
-target_compile_definitions(PluginInterface PRIVATE
- TARGET_NAME="PluginInterface"
- DEBUG_PREFIX="PluginInterface"
-)
-
-target_include_directories(PluginInterface
- INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}
- PRIVATE ${LIBOMPTARGET_INCLUDE_DIR}
-)
-
-set_target_properties(PluginInterface PROPERTIES
- POSITION_INDEPENDENT_CODE ON
- CXX_VISIBILITY_PRESET protected)
diff --git a/openmp/libomptarget/include/dlwrap.h b/openmp/libomptarget/plugins-nextgen/common/include/DLWrap.h
index 2784bd8..8934e7e 100644
--- a/openmp/libomptarget/include/dlwrap.h
+++ b/openmp/libomptarget/plugins-nextgen/common/include/DLWrap.h
@@ -1,4 +1,4 @@
-//===------- dlwrap.h - Convenience wrapper around dlopen/dlsym -- C++ -*-===//
+//===-- Shared/DLWrap.h - Convenience wrapper for dlopen/dlsym --*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
@@ -38,8 +38,8 @@
//
//===----------------------------------------------------------------------===//
-#ifndef DLWRAP_H_INCLUDED
-#define DLWRAP_H_INCLUDED
+#ifndef OMPTARGET_SHARED_DLWRAP_H
+#define OMPTARGET_SHARED_DLWRAP_H
#include <array>
#include <cstddef>
@@ -283,4 +283,4 @@ template <size_t Requested, size_t Required> constexpr void verboseAssert() {
x9, x10); \
}
-#endif
+#endif // OMPTARGET_SHARED_DLWRAP_H
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.h b/openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
index aff10b1..aff10b1 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.h
+++ b/openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/JIT.h b/openmp/libomptarget/plugins-nextgen/common/include/JIT.h
index 1a5e56b..1a5e56b 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/JIT.h
+++ b/openmp/libomptarget/plugins-nextgen/common/include/JIT.h
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/MemoryManager.h b/openmp/libomptarget/plugins-nextgen/common/include/MemoryManager.h
index 95491b4..95491b4 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/MemoryManager.h
+++ b/openmp/libomptarget/plugins-nextgen/common/include/MemoryManager.h
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.h b/openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
index 6abd1b6..6abd1b6 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.h
+++ b/openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/RPC.h b/openmp/libomptarget/plugins-nextgen/common/include/RPC.h
index e1ebcb2..e1ebcb2 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/RPC.h
+++ b/openmp/libomptarget/plugins-nextgen/common/include/RPC.h
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.cpp b/openmp/libomptarget/plugins-nextgen/common/src/GlobalHandler.cpp
index 6cb9a36..6cb9a36 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/GlobalHandler.cpp
+++ b/openmp/libomptarget/plugins-nextgen/common/src/GlobalHandler.cpp
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/JIT.cpp b/openmp/libomptarget/plugins-nextgen/common/src/JIT.cpp
index 188fb6d..188fb6d 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/JIT.cpp
+++ b/openmp/libomptarget/plugins-nextgen/common/src/JIT.cpp
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.cpp b/openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
index 3b0b7de..3b0b7de 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.cpp
+++ b/openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/RPC.cpp b/openmp/libomptarget/plugins-nextgen/common/src/RPC.cpp
index a40bf14..a40bf14 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/RPC.cpp
+++ b/openmp/libomptarget/plugins-nextgen/common/src/RPC.cpp
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/Utils/ELF.cpp b/openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.cpp
index 7089e26..7089e26 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/Utils/ELF.cpp
+++ b/openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.cpp
diff --git a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/Utils/ELF.h b/openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.h
index 6b1ce43..6b1ce43 100644
--- a/openmp/libomptarget/plugins-nextgen/common/PluginInterface/Utils/ELF.h
+++ b/openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.h
diff --git a/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt b/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
index 3e1d11a..95b288c 100644
--- a/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
+++ b/openmp/libomptarget/plugins-nextgen/cuda/CMakeLists.txt
@@ -34,7 +34,7 @@ add_llvm_library(omptarget.rtl.cuda SHARED
Object
LINK_LIBS PRIVATE
- PluginInterface
+ PluginCommon
${OPENMP_PTHREAD_LIB}
NO_INSTALL_RPATH
diff --git a/openmp/libomptarget/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp b/openmp/libomptarget/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp
index f99dc78..56c4404 100644
--- a/openmp/libomptarget/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp
+++ b/openmp/libomptarget/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp
@@ -15,8 +15,8 @@
#include "Shared/Debug.h"
+#include "DLWrap.h"
#include "cuda.h"
-#include "dlwrap.h"
#include <memory>
#include <string>