Skip to content

Commit ed5a20e

Browse files
authored
Merge pull request #1196 from aarongreig/aaron/replaceProgramInfoSourceWithIL
Replace PROGRAM_INFO_SOURCE with PROGRAM_INFO_IL.
2 parents 0112320 + 62cdf6a commit ed5a20e

File tree

12 files changed

+35
-32
lines changed

12 files changed

+35
-32
lines changed

include/ur_api.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4491,7 +4491,9 @@ typedef enum ur_program_info_t {
44914491
UR_PROGRAM_INFO_DEVICES = 3, ///< [::ur_device_handle_t[]] Return list of devices associated with a program.
44924492
///< This is either the list of devices associated with the context or a
44934493
///< subset of those devices when the program is created using ::urProgramCreateWithBinary.
4494-
UR_PROGRAM_INFO_SOURCE = 4, ///< [char[]] Return program source associated with Program.
4494+
UR_PROGRAM_INFO_IL = 4, ///< [char[]] Return program IL if the program was created with
4495+
///< ::urProgramCreateWithIL, otherwise return size will be set to 0 and
4496+
///< nothing will be returned.
44954497
UR_PROGRAM_INFO_BINARY_SIZES = 5, ///< [size_t[]] Return program binary sizes for each device.
44964498
UR_PROGRAM_INFO_BINARIES = 6, ///< [unsigned char[]] Return program binaries for all devices for this
44974499
///< Program.

include/ur_print.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7505,8 +7505,8 @@ inline std::ostream &operator<<(std::ostream &os, enum ur_program_info_t value)
75057505
case UR_PROGRAM_INFO_DEVICES:
75067506
os << "UR_PROGRAM_INFO_DEVICES";
75077507
break;
7508-
case UR_PROGRAM_INFO_SOURCE:
7509-
os << "UR_PROGRAM_INFO_SOURCE";
7508+
case UR_PROGRAM_INFO_IL:
7509+
os << "UR_PROGRAM_INFO_IL";
75107510
break;
75117511
case UR_PROGRAM_INFO_BINARY_SIZES:
75127512
os << "UR_PROGRAM_INFO_BINARY_SIZES";
@@ -7588,7 +7588,7 @@ inline ur_result_t printTagged(std::ostream &os, const void *ptr, ur_program_inf
75887588
}
75897589
os << "}";
75907590
} break;
7591-
case UR_PROGRAM_INFO_SOURCE: {
7591+
case UR_PROGRAM_INFO_IL: {
75927592

75937593
const char *tptr = (const char *)ptr;
75947594
printPtr(os, tptr);

scripts/core/program.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -376,8 +376,8 @@ etors:
376376
desc: |
377377
[$x_device_handle_t[]] Return list of devices associated with a program.
378378
This is either the list of devices associated with the context or a subset of those devices when the program is created using $xProgramCreateWithBinary.
379-
- name: SOURCE
380-
desc: "[char[]] Return program source associated with Program."
379+
- name: IL
380+
desc: "[char[]] Return program IL if the program was created with $xProgramCreateWithIL, otherwise return size will be set to 0 and nothing will be returned."
381381
- name: BINARY_SIZES
382382
desc: "[size_t[]] Return program binary sizes for each device."
383383
- name: BINARIES

source/adapters/cuda/program.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -405,8 +405,6 @@ urProgramGetInfo(ur_program_handle_t hProgram, ur_program_info_t propName,
405405
return ReturnValue(1u);
406406
case UR_PROGRAM_INFO_DEVICES:
407407
return ReturnValue(&hProgram->Device, 1);
408-
case UR_PROGRAM_INFO_SOURCE:
409-
return ReturnValue(hProgram->Binary);
410408
case UR_PROGRAM_INFO_BINARY_SIZES:
411409
return ReturnValue(&hProgram->BinarySizeInBytes, 1);
412410
case UR_PROGRAM_INFO_BINARIES:
@@ -416,6 +414,7 @@ urProgramGetInfo(ur_program_handle_t hProgram, ur_program_info_t propName,
416414
UR_ASSERT(getKernelNames(hProgram), UR_RESULT_ERROR_UNSUPPORTED_FEATURE);
417415
return UR_RESULT_ERROR_UNSUPPORTED_ENUMERATION;
418416
case UR_PROGRAM_INFO_NUM_KERNELS:
417+
case UR_PROGRAM_INFO_IL:
419418
return UR_RESULT_ERROR_UNSUPPORTED_ENUMERATION;
420419
default:
421420
break;

source/adapters/hip/program.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -403,14 +403,14 @@ urProgramGetInfo(ur_program_handle_t hProgram, ur_program_info_t propName,
403403
return ReturnValue(1u);
404404
case UR_PROGRAM_INFO_DEVICES:
405405
return ReturnValue(&hProgram->getContext()->getDevices()[0], 1);
406-
case UR_PROGRAM_INFO_SOURCE:
407-
return ReturnValue(hProgram->Binary);
408406
case UR_PROGRAM_INFO_BINARY_SIZES:
409407
return ReturnValue(&hProgram->BinarySizeInBytes, 1);
410408
case UR_PROGRAM_INFO_BINARIES:
411409
return ReturnValue(&hProgram->Binary, 1);
412410
case UR_PROGRAM_INFO_KERNEL_NAMES:
413411
return getKernelNames(hProgram);
412+
case UR_PROGRAM_INFO_IL:
413+
return UR_RESULT_ERROR_UNSUPPORTED_ENUMERATION;
414414
default:
415415
break;
416416
}

source/adapters/level_zero/program.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -223,8 +223,6 @@ ur_result_t urProgramBuildExp(
223223
hProgram->ZeBuildLogMap.insert(std::make_pair(ZeDevice, ZeBuildLog));
224224
}
225225

226-
// We no longer need the IL / native code.
227-
hProgram->Code.reset();
228226
if (!hProgram->ZeModuleMap.empty())
229227
hProgram->ZeModule = hProgram->ZeModuleMap.begin()->second;
230228
if (!hProgram->ZeBuildLogMap.empty())
@@ -816,8 +814,8 @@ ur_result_t urProgramGetInfo(
816814
} catch (...) {
817815
return UR_RESULT_ERROR_UNKNOWN;
818816
}
819-
case UR_PROGRAM_INFO_SOURCE:
820-
return ReturnValue(Program->Code.get());
817+
case UR_PROGRAM_INFO_IL:
818+
return ReturnValue(Program->Code.get(), Program->CodeLength);
821819
default:
822820
return UR_RESULT_ERROR_INVALID_ENUMERATION;
823821
}

source/adapters/native_cpu/program.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -215,15 +215,15 @@ urProgramGetInfo(ur_program_handle_t hProgram, ur_program_info_t propName,
215215
return returnValue(1u);
216216
case UR_PROGRAM_INFO_DEVICES:
217217
return returnValue(hProgram->_ctx->_device);
218-
case UR_PROGRAM_INFO_SOURCE:
219-
return returnValue(nullptr);
220218
case UR_PROGRAM_INFO_BINARY_SIZES:
221219
return returnValue("foo");
222220
case UR_PROGRAM_INFO_BINARIES:
223221
return returnValue("foo");
224222
case UR_PROGRAM_INFO_KERNEL_NAMES: {
225223
return returnValue("foo");
226224
}
225+
case UR_PROGRAM_INFO_IL:
226+
return UR_RESULT_ERROR_UNSUPPORTED_ENUMERATION;
227227
default:
228228
break;
229229
}

source/adapters/opencl/program.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,8 +159,8 @@ static cl_int mapURProgramInfoToCL(ur_program_info_t URPropName) {
159159
return CL_PROGRAM_NUM_DEVICES;
160160
case UR_PROGRAM_INFO_DEVICES:
161161
return CL_PROGRAM_DEVICES;
162-
case UR_PROGRAM_INFO_SOURCE:
163-
return CL_PROGRAM_SOURCE;
162+
case UR_PROGRAM_INFO_IL:
163+
return CL_PROGRAM_IL;
164164
case UR_PROGRAM_INFO_BINARY_SIZES:
165165
return CL_PROGRAM_BINARY_SIZES;
166166
case UR_PROGRAM_INFO_BINARIES:

test/conformance/program/program_adapter_cuda.match

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,6 @@ urProgramBuildTest.BuildFailure/NVIDIA_CUDA_BACKEND___{{.*}}_
55
{{OPT}}urProgramCreateWithILTest.BuildInvalidProgram/NVIDIA_CUDA_BACKEND___{{.*}}
66
# This test flakily fails
77
{{OPT}}urProgramGetBuildInfoSingleTest.LogIsNullTerminated/NVIDIA_CUDA_BACKEND___{{.*}}
8-
# CUDA doesn't expose kernel numbers or names
9-
urProgramGetInfoTest.Success/NVIDIA_CUDA_BACKEND___{{.*}}___UR_PROGRAM_INFO_NUM_KERNELS
10-
urProgramGetInfoTest.Success/NVIDIA_CUDA_BACKEND___{{.*}}___UR_PROGRAM_INFO_KERNEL_NAMES
118
{{OPT}}urProgramSetSpecializationConstantsTest.Success/NVIDIA_CUDA_BACKEND___{{.*}}
129
{{OPT}}urProgramSetSpecializationConstantsTest.UseDefaultValue/NVIDIA_CUDA_BACKEND___{{.*}}
1310
urProgramSetMultipleSpecializationConstantsTest.MultipleCalls/NVIDIA_CUDA_BACKEND___{{.*}}

test/conformance/program/program_adapter_native_cpu.match

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@
5858
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_CONTEXT
5959
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_DEVICES
6060
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_DEVICES
61-
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_SOURCE
61+
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_IL
6262
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARY_SIZES
6363
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARIES
6464
{{OPT}}urProgramGetInfoTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_KERNELS
@@ -67,7 +67,7 @@
6767
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_CONTEXT
6868
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_DEVICES
6969
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_DEVICES
70-
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_SOURCE
70+
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_IL
7171
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARY_SIZES
7272
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARIES
7373
{{OPT}}urProgramGetInfoTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_KERNELS
@@ -76,7 +76,7 @@
7676
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_CONTEXT
7777
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_DEVICES
7878
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_DEVICES
79-
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_SOURCE
79+
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_IL
8080
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARY_SIZES
8181
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARIES
8282
{{OPT}}urProgramGetInfoTest.InvalidEnumeration/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_KERNELS
@@ -85,7 +85,7 @@
8585
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_CONTEXT
8686
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_DEVICES
8787
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_DEVICES
88-
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_SOURCE
88+
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_IL
8989
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARY_SIZES
9090
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARIES
9191
{{OPT}}urProgramGetInfoTest.InvalidSizeZero/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_KERNELS
@@ -94,7 +94,7 @@
9494
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_CONTEXT
9595
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_DEVICES
9696
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_DEVICES
97-
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_SOURCE
97+
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_IL
9898
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARY_SIZES
9999
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARIES
100100
{{OPT}}urProgramGetInfoTest.InvalidSizeSmall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_KERNELS
@@ -103,7 +103,7 @@
103103
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_CONTEXT
104104
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_DEVICES
105105
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_DEVICES
106-
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_SOURCE
106+
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_IL
107107
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARY_SIZES
108108
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARIES
109109
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValue/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_KERNELS
@@ -112,7 +112,7 @@
112112
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_CONTEXT
113113
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_DEVICES
114114
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_DEVICES
115-
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_SOURCE
115+
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_IL
116116
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARY_SIZES
117117
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_BINARIES
118118
{{OPT}}urProgramGetInfoTest.InvalidNullPointerPropValueRet/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}__UR_PROGRAM_INFO_NUM_KERNELS

0 commit comments

Comments
 (0)