Skip to content

Commit 62dd1bc

Browse files
committed
Fix OffloadGenerate target, clang-format generated files
1 parent d576ea9 commit 62dd1bc

File tree

9 files changed

+348
-222
lines changed

9 files changed

+348
-222
lines changed

offload/new-api/API/CMakeLists.txt

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# The OffloadGenerate target is used to regenerate the generated files in the
2+
# include directory. These files are checked in with the rest of the source,
3+
# therefore it is only needed when making changes to the API.
4+
5+
find_program(CLANG_FORMAT clang-format PATHS ${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH)
6+
if (CLANG_FORMAT)
7+
set(LLVM_TARGET_DEFINITIONS ${CMAKE_CURRENT_SOURCE_DIR}/OffloadAPI.td)
8+
9+
tablegen(OFFLOAD offload_api.h -gen-api)
10+
tablegen(OFFLOAD offload_funcs.inc -gen-func-names)
11+
tablegen(OFFLOAD offload_impl_func_decls.inc -gen-impl-func-decls)
12+
tablegen(OFFLOAD offload_entry_points.inc -gen-entry-points)
13+
tablegen(OFFLOAD offload_print.hpp -gen-print-header)
14+
tablegen(OFFLOAD offload_exports -gen-exports)
15+
16+
set(OFFLOAD_GENERATED_FILES ${TABLEGEN_OUTPUT})
17+
add_public_tablegen_target(OffloadGenerate)
18+
add_custom_command(TARGET OffloadGenerate POST_BUILD COMMAND ${CLANG_FORMAT}
19+
-i ${OFFLOAD_GENERATED_FILES})
20+
add_custom_command(TARGET OffloadGenerate POST_BUILD COMMAND ${CMAKE_COMMAND}
21+
-E copy_if_different ${OFFLOAD_GENERATED_FILES} "${CMAKE_CURRENT_SOURCE_DIR}/../include")
22+
else()
23+
message(WARNING "clang-format was not found, so the OffloadGenerate target\
24+
will not be available. Offload will still build, but you will not be\
25+
able to make changes to the API.")
26+
endif()

offload/new-api/CMakeLists.txt

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,8 @@
1-
set(LLVM_TARGET_DEFINITIONS ${CMAKE_CURRENT_SOURCE_DIR}/API/OffloadAPI.td)
2-
list(APPEND LLVM_TABLEGEN_FLAGS -I ${CMAKE_CURRENT_SOURCE_DIR}/API)
3-
4-
tablegen(OFFLOAD offload_api.h -gen-api)
5-
tablegen(OFFLOAD offload_funcs.inc -gen-func-names)
6-
tablegen(OFFLOAD offload_impl_func_decls.inc -gen-impl-func-decls)
7-
tablegen(OFFLOAD offload_entry_points.inc -gen-entry-points)
8-
tablegen(OFFLOAD offload_print.hpp -gen-print-header)
9-
tablegen(OFFLOAD offload_exports -gen-exports)
10-
11-
foreach(itm IN LISTS TABLEGEN_OUTPUT)
12-
message(${itm})
13-
endforeach()
14-
15-
set(OFFLOAD_GENERATED_FILES ${TABLEGEN_OUTPUT})
16-
add_public_tablegen_target(OffloadGenerate)
17-
18-
add_custom_command(TARGET OffloadGenerate POST_BUILD COMMAND ${CMAKE_COMMAND}
19-
-E copy_if_different ${OFFLOAD_GENERATED_FILES} "${CMAKE_CURRENT_SOURCE_DIR}/include")
1+
add_subdirectory(API)
202

213
add_llvm_library(offload_new SHARED
224
src/offload_lib.cpp
23-
src/offload_impl.cpp
24-
DEPENDS OffloadGenerate)
5+
src/offload_impl.cpp)
256

267
foreach(plugin IN LISTS LIBOMPTARGET_PLUGINS_TO_BUILD)
278
target_link_libraries(offload_new PRIVATE omptarget.rtl.${plugin})

offload/new-api/include/offload_api.h

Lines changed: 154 additions & 95 deletions
Large diffs are not rendered by default.

offload/new-api/include/offload_entry_points.inc

Lines changed: 56 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -7,24 +7,24 @@
77
//===----------------------------------------------------------------------===//
88

99
///////////////////////////////////////////////////////////////////////////////
10-
offload_result_t offloadGetErrorDetails_val(
11-
size_t* SizeRet, const char** DetailStringRet) {
10+
offload_result_t offloadGetErrorDetails_val(size_t *SizeRet,
11+
const char **DetailStringRet) {
1212
if (true /*enableParameterValidation*/) {
1313
}
1414

1515
return offloadGetErrorDetails_impl(SizeRet, DetailStringRet);
16-
1716
}
18-
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadGetErrorDetails(
19-
size_t* SizeRet, const char** DetailStringRet) {
17+
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL
18+
offloadGetErrorDetails(size_t *SizeRet, const char **DetailStringRet) {
2019
if (std::getenv("OFFLOAD_TRACE")) {
2120
std::cout << "---> offloadGetErrorDetails";
2221
}
2322

24-
offload_result_t result = offloadGetErrorDetails_val(SizeRet, DetailStringRet);
23+
offload_result_t result =
24+
offloadGetErrorDetails_val(SizeRet, DetailStringRet);
2525

2626
if (std::getenv("OFFLOAD_TRACE")) {
27-
offload_get_error_details_params_t Params = { &SizeRet, &DetailStringRet};
27+
offload_get_error_details_params_t Params = {&SizeRet, &DetailStringRet};
2828
std::cout << "(" << &Params << ")";
2929
std::cout << "-> " << result << "\n";
3030
if (result != OFFLOAD_RESULT_SUCCESS && LastErrorDetails()) {
@@ -35,28 +35,30 @@ OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadGetErrorDetails(
3535
}
3636

3737
///////////////////////////////////////////////////////////////////////////////
38-
offload_result_t offloadPlatformGet_val(
39-
uint32_t NumEntries, offload_platform_handle_t* phPlatforms, uint32_t* pNumPlatforms) {
38+
offload_result_t offloadPlatformGet_val(uint32_t NumEntries,
39+
offload_platform_handle_t *phPlatforms,
40+
uint32_t *pNumPlatforms) {
4041
if (true /*enableParameterValidation*/) {
4142
if (NumEntries == 0 && phPlatforms != NULL) {
4243
return OFFLOAD_RESULT_ERROR_INVALID_SIZE;
4344
}
44-
4545
}
4646

4747
return offloadPlatformGet_impl(NumEntries, phPlatforms, pNumPlatforms);
48-
4948
}
50-
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadPlatformGet(
51-
uint32_t NumEntries, offload_platform_handle_t* phPlatforms, uint32_t* pNumPlatforms) {
49+
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL
50+
offloadPlatformGet(uint32_t NumEntries, offload_platform_handle_t *phPlatforms,
51+
uint32_t *pNumPlatforms) {
5252
if (std::getenv("OFFLOAD_TRACE")) {
5353
std::cout << "---> offloadPlatformGet";
5454
}
5555

56-
offload_result_t result = offloadPlatformGet_val(NumEntries, phPlatforms, pNumPlatforms);
56+
offload_result_t result =
57+
offloadPlatformGet_val(NumEntries, phPlatforms, pNumPlatforms);
5758

5859
if (std::getenv("OFFLOAD_TRACE")) {
59-
offload_platform_get_params_t Params = { &NumEntries, &phPlatforms, &pNumPlatforms};
60+
offload_platform_get_params_t Params = {&NumEntries, &phPlatforms,
61+
&pNumPlatforms};
6062
std::cout << "(" << &Params << ")";
6163
std::cout << "-> " << result << "\n";
6264
if (result != OFFLOAD_RESULT_SUCCESS && LastErrorDetails()) {
@@ -67,8 +69,10 @@ OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadPlatformGet(
6769
}
6870

6971
///////////////////////////////////////////////////////////////////////////////
70-
offload_result_t offloadPlatformGetInfo_val(
71-
offload_platform_handle_t hPlatform, offload_platform_info_t propName, size_t propSize, void* pPropValue, size_t* pPropSizeRet) {
72+
offload_result_t offloadPlatformGetInfo_val(offload_platform_handle_t hPlatform,
73+
offload_platform_info_t propName,
74+
size_t propSize, void *pPropValue,
75+
size_t *pPropSizeRet) {
7276
if (true /*enableParameterValidation*/) {
7377
if (propSize == 0 && pPropValue != NULL) {
7478
return OFFLOAD_RESULT_ERROR_INVALID_SIZE;
@@ -85,22 +89,24 @@ offload_result_t offloadPlatformGetInfo_val(
8589
if (NULL == hPlatform) {
8690
return OFFLOAD_RESULT_ERROR_INVALID_NULL_HANDLE;
8791
}
88-
8992
}
9093

91-
return offloadPlatformGetInfo_impl(hPlatform, propName, propSize, pPropValue, pPropSizeRet);
92-
94+
return offloadPlatformGetInfo_impl(hPlatform, propName, propSize, pPropValue,
95+
pPropSizeRet);
9396
}
9497
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadPlatformGetInfo(
95-
offload_platform_handle_t hPlatform, offload_platform_info_t propName, size_t propSize, void* pPropValue, size_t* pPropSizeRet) {
98+
offload_platform_handle_t hPlatform, offload_platform_info_t propName,
99+
size_t propSize, void *pPropValue, size_t *pPropSizeRet) {
96100
if (std::getenv("OFFLOAD_TRACE")) {
97101
std::cout << "---> offloadPlatformGetInfo";
98102
}
99103

100-
offload_result_t result = offloadPlatformGetInfo_val(hPlatform, propName, propSize, pPropValue, pPropSizeRet);
104+
offload_result_t result = offloadPlatformGetInfo_val(
105+
hPlatform, propName, propSize, pPropValue, pPropSizeRet);
101106

102107
if (std::getenv("OFFLOAD_TRACE")) {
103-
offload_platform_get_info_params_t Params = { &hPlatform, &propName, &propSize, &pPropValue, &pPropSizeRet};
108+
offload_platform_get_info_params_t Params = {
109+
&hPlatform, &propName, &propSize, &pPropValue, &pPropSizeRet};
104110
std::cout << "(" << &Params << ")";
105111
std::cout << "-> " << result << "\n";
106112
if (result != OFFLOAD_RESULT_SUCCESS && LastErrorDetails()) {
@@ -111,8 +117,11 @@ OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadPlatformGetInfo(
111117
}
112118

113119
///////////////////////////////////////////////////////////////////////////////
114-
offload_result_t offloadDeviceGet_val(
115-
offload_platform_handle_t hPlatform, offload_device_type_t DeviceType, uint32_t NumEntries, offload_device_handle_t* phDevices, uint32_t* pNumDevices) {
120+
offload_result_t offloadDeviceGet_val(offload_platform_handle_t hPlatform,
121+
offload_device_type_t DeviceType,
122+
uint32_t NumEntries,
123+
offload_device_handle_t *phDevices,
124+
uint32_t *pNumDevices) {
116125
if (true /*enableParameterValidation*/) {
117126
if (NumEntries == 0 && phDevices != NULL) {
118127
return OFFLOAD_RESULT_ERROR_INVALID_SIZE;
@@ -125,22 +134,25 @@ offload_result_t offloadDeviceGet_val(
125134
if (NULL == hPlatform) {
126135
return OFFLOAD_RESULT_ERROR_INVALID_NULL_HANDLE;
127136
}
128-
129137
}
130138

131-
return offloadDeviceGet_impl(hPlatform, DeviceType, NumEntries, phDevices, pNumDevices);
132-
139+
return offloadDeviceGet_impl(hPlatform, DeviceType, NumEntries, phDevices,
140+
pNumDevices);
133141
}
134-
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadDeviceGet(
135-
offload_platform_handle_t hPlatform, offload_device_type_t DeviceType, uint32_t NumEntries, offload_device_handle_t* phDevices, uint32_t* pNumDevices) {
142+
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL
143+
offloadDeviceGet(offload_platform_handle_t hPlatform,
144+
offload_device_type_t DeviceType, uint32_t NumEntries,
145+
offload_device_handle_t *phDevices, uint32_t *pNumDevices) {
136146
if (std::getenv("OFFLOAD_TRACE")) {
137147
std::cout << "---> offloadDeviceGet";
138148
}
139149

140-
offload_result_t result = offloadDeviceGet_val(hPlatform, DeviceType, NumEntries, phDevices, pNumDevices);
150+
offload_result_t result = offloadDeviceGet_val(
151+
hPlatform, DeviceType, NumEntries, phDevices, pNumDevices);
141152

142153
if (std::getenv("OFFLOAD_TRACE")) {
143-
offload_device_get_params_t Params = { &hPlatform, &DeviceType, &NumEntries, &phDevices, &pNumDevices};
154+
offload_device_get_params_t Params = {&hPlatform, &DeviceType, &NumEntries,
155+
&phDevices, &pNumDevices};
144156
std::cout << "(" << &Params << ")";
145157
std::cout << "-> " << result << "\n";
146158
if (result != OFFLOAD_RESULT_SUCCESS && LastErrorDetails()) {
@@ -151,8 +163,10 @@ OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadDeviceGet(
151163
}
152164

153165
///////////////////////////////////////////////////////////////////////////////
154-
offload_result_t offloadDeviceGetInfo_val(
155-
offload_device_handle_t hDevice, offload_device_info_t propName, size_t propSize, void* pPropValue, size_t* pPropSizeRet) {
166+
offload_result_t offloadDeviceGetInfo_val(offload_device_handle_t hDevice,
167+
offload_device_info_t propName,
168+
size_t propSize, void *pPropValue,
169+
size_t *pPropSizeRet) {
156170
if (true /*enableParameterValidation*/) {
157171
if (propSize == 0 && pPropValue != NULL) {
158172
return OFFLOAD_RESULT_ERROR_INVALID_SIZE;
@@ -169,22 +183,24 @@ offload_result_t offloadDeviceGetInfo_val(
169183
if (NULL == hDevice) {
170184
return OFFLOAD_RESULT_ERROR_INVALID_NULL_HANDLE;
171185
}
172-
173186
}
174187

175-
return offloadDeviceGetInfo_impl(hDevice, propName, propSize, pPropValue, pPropSizeRet);
176-
188+
return offloadDeviceGetInfo_impl(hDevice, propName, propSize, pPropValue,
189+
pPropSizeRet);
177190
}
178191
OFFLOAD_APIEXPORT offload_result_t OFFLOAD_APICALL offloadDeviceGetInfo(
179-
offload_device_handle_t hDevice, offload_device_info_t propName, size_t propSize, void* pPropValue, size_t* pPropSizeRet) {
192+
offload_device_handle_t hDevice, offload_device_info_t propName,
193+
size_t propSize, void *pPropValue, size_t *pPropSizeRet) {
180194
if (std::getenv("OFFLOAD_TRACE")) {
181195
std::cout << "---> offloadDeviceGetInfo";
182196
}
183197

184-
offload_result_t result = offloadDeviceGetInfo_val(hDevice, propName, propSize, pPropValue, pPropSizeRet);
198+
offload_result_t result = offloadDeviceGetInfo_val(
199+
hDevice, propName, propSize, pPropValue, pPropSizeRet);
185200

186201
if (std::getenv("OFFLOAD_TRACE")) {
187-
offload_device_get_info_params_t Params = { &hDevice, &propName, &propSize, &pPropValue, &pPropSizeRet};
202+
offload_device_get_info_params_t Params = {&hDevice, &propName, &propSize,
203+
&pPropValue, &pPropSizeRet};
188204
std::cout << "(" << &Params << ")";
189205
std::cout << "-> " << result << "\n";
190206
if (result != OFFLOAD_RESULT_SUCCESS && LastErrorDetails()) {
Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
VERS1.0 {
2-
global:
3-
offloadGetErrorDetails;
4-
offloadPlatformGet;
5-
offloadPlatformGetInfo;
6-
offloadDeviceGet;
7-
offloadDeviceGetInfo;
8-
local:
9-
*;
2+
global:
3+
offloadGetErrorDetails;
4+
offloadPlatformGet;
5+
offloadPlatformGetInfo;
6+
offloadDeviceGet;
7+
offloadDeviceGetInfo;
8+
local:
9+
*;
1010
};

offload/new-api/include/offload_impl_func_decls.inc

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,27 @@
55
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
66
//
77
//===----------------------------------------------------------------------===//
8-
offload_result_t offloadGetErrorDetails_impl(size_t* SizeRet, const char** DetailStringRet);
9-
offload_impl_result_t offloadPlatformGet_impl(uint32_t NumEntries, offload_platform_handle_t* phPlatforms, uint32_t* pNumPlatforms);
10-
offload_impl_result_t offloadPlatformGetInfo_impl(offload_platform_handle_t hPlatform, offload_platform_info_t propName, size_t propSize, void* pPropValue, size_t* pPropSizeRet);
11-
offload_impl_result_t offloadDeviceGet_impl(offload_platform_handle_t hPlatform, offload_device_type_t DeviceType, uint32_t NumEntries, offload_device_handle_t* phDevices, uint32_t* pNumDevices);
12-
offload_impl_result_t offloadDeviceGetInfo_impl(offload_device_handle_t hDevice, offload_device_info_t propName, size_t propSize, void* pPropValue, size_t* pPropSizeRet);
8+
offload_result_t offloadGetErrorDetails_impl(size_t *SizeRet,
9+
const char **DetailStringRet);
10+
11+
offload_impl_result_t
12+
offloadPlatformGet_impl(uint32_t NumEntries,
13+
offload_platform_handle_t *phPlatforms,
14+
uint32_t *pNumPlatforms);
15+
16+
offload_impl_result_t
17+
offloadPlatformGetInfo_impl(offload_platform_handle_t hPlatform,
18+
offload_platform_info_t propName, size_t propSize,
19+
void *pPropValue, size_t *pPropSizeRet);
20+
21+
offload_impl_result_t offloadDeviceGet_impl(offload_platform_handle_t hPlatform,
22+
offload_device_type_t DeviceType,
23+
uint32_t NumEntries,
24+
offload_device_handle_t *phDevices,
25+
uint32_t *pNumDevices);
26+
27+
offload_impl_result_t offloadDeviceGetInfo_impl(offload_device_handle_t hDevice,
28+
offload_device_info_t propName,
29+
size_t propSize,
30+
void *pPropValue,
31+
size_t *pPropSizeRet);

0 commit comments

Comments
 (0)