Skip to content

Commit

Permalink
[Spec Constants] Improved handling of invalid/unsupported spec. const…
Browse files Browse the repository at this point in the history
…ants

Two main changes to how `Kernel/ProgramSetSpecializationConstants`
are handled:
* They may now output either `INVALID_VALUE` or the new
  `INVALID_SPEC_ID` when the provided list is invalid.
* The OpenCL and level 0 adapters now respond to
  `UR_DEVICE_INFO_KERNEL_SET_SPECIALIZATION_CONSTANTS` with `false`
  rather than erroring out. This fixes some tests that were
  incorrectly not being skipped.
* `urKernelSetSpecializationConstants` now "implemented" (as a
  function that returns `UNSUPPORTED_FEATURE` for a number of
  adapters.
  • Loading branch information
RossBrunton committed Aug 14, 2024
1 parent d7e0fad commit 1a78a53
Show file tree
Hide file tree
Showing 22 changed files with 157 additions and 6 deletions.
11 changes: 11 additions & 0 deletions include/ur_api.h
Original file line number Diff line number Diff line change
Expand Up @@ -502,6 +502,7 @@ typedef enum ur_result_t {
UR_RESULT_ERROR_LAYER_NOT_PRESENT = 67, ///< A requested layer was not found by the loader.
UR_RESULT_ERROR_IN_EVENT_LIST_EXEC_STATUS = 68, ///< An event in the provided wait list has ::UR_EVENT_STATUS_ERROR.
UR_RESULT_ERROR_DEVICE_NOT_AVAILABLE = 69, ///< Device in question has `::UR_DEVICE_INFO_AVAILABLE == false`
UR_RESULT_ERROR_INVALID_SPEC_ID = 70, ///< A specialization constant identifier is not valid.
UR_RESULT_ERROR_INVALID_COMMAND_BUFFER_EXP = 0x1000, ///< Invalid Command-Buffer
UR_RESULT_ERROR_INVALID_COMMAND_BUFFER_SYNC_POINT_EXP = 0x1001, ///< Sync point is not valid for the command-buffer
UR_RESULT_ERROR_INVALID_COMMAND_BUFFER_SYNC_POINT_WAIT_LIST_EXP = 0x1002, ///< Sync point wait list is invalid
Expand Down Expand Up @@ -4640,6 +4641,11 @@ typedef struct ur_specialization_constant_info_t {
/// + `NULL == pSpecConstants`
/// - ::UR_RESULT_ERROR_INVALID_SIZE
/// + `count == 0`
/// - ::UR_RESULT_ERROR_INVALID_VALUE
/// + A pSpecConstant entry contains a size that does not match that of the specialization constant in the module.
/// + A pSpecConstant entry contains a nullptr pValue.
/// - ::UR_RESULT_ERROR_INVALID_SPEC_ID
/// + Any id specified in a pSpecConstant entry is not a valid specialization constant identifier.
UR_APIEXPORT ur_result_t UR_APICALL
urProgramSetSpecializationConstants(
ur_program_handle_t hProgram, ///< [in] handle of the Program object
Expand Down Expand Up @@ -5226,6 +5232,11 @@ urKernelSetArgMemObj(
/// + `count == 0`
/// - ::UR_RESULT_ERROR_UNSUPPORTED_FEATURE
/// + If ::UR_DEVICE_INFO_KERNEL_SET_SPECIALIZATION_CONSTANTS query is false
/// - ::UR_RESULT_ERROR_INVALID_VALUE
/// + A pSpecConstant entry contains a size that does not match that of the specialization constant in the module.
/// + A pSpecConstant entry contains a nullptr pValue.
/// - ::UR_RESULT_ERROR_INVALID_SPEC_ID
/// + Any id specified in a pSpecConstant entry is not a valid specialization constant identifier.
UR_APIEXPORT ur_result_t UR_APICALL
urKernelSetSpecializationConstants(
ur_kernel_handle_t hKernel, ///< [in] handle of the kernel object
Expand Down
3 changes: 3 additions & 0 deletions include/ur_print.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -1588,6 +1588,9 @@ inline std::ostream &operator<<(std::ostream &os, enum ur_result_t value) {
case UR_RESULT_ERROR_DEVICE_NOT_AVAILABLE:
os << "UR_RESULT_ERROR_DEVICE_NOT_AVAILABLE";
break;
case UR_RESULT_ERROR_INVALID_SPEC_ID:
os << "UR_RESULT_ERROR_INVALID_SPEC_ID";
break;
case UR_RESULT_ERROR_INVALID_COMMAND_BUFFER_EXP:
os << "UR_RESULT_ERROR_INVALID_COMMAND_BUFFER_EXP";
break;
Expand Down
2 changes: 2 additions & 0 deletions scripts/core/common.yml
Original file line number Diff line number Diff line change
Expand Up @@ -276,6 +276,8 @@ etors:
desc: "An event in the provided wait list has $X_EVENT_STATUS_ERROR."
- name: ERROR_DEVICE_NOT_AVAILABLE
desc: "Device in question has `$X_DEVICE_INFO_AVAILABLE == false`"
- name: ERROR_INVALID_SPEC_ID
desc: "A specialization constant identifier is not valid."
- name: ERROR_UNKNOWN
value: "0x7ffffffe"
desc: "Unknown or internal error"
Expand Down
5 changes: 5 additions & 0 deletions scripts/core/kernel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -465,6 +465,11 @@ returns:
- "`count == 0`"
- $X_RESULT_ERROR_UNSUPPORTED_FEATURE:
- "If $X_DEVICE_INFO_KERNEL_SET_SPECIALIZATION_CONSTANTS query is false"
- $X_RESULT_ERROR_INVALID_VALUE:
- "A pSpecConstant entry contains a size that does not match that of the specialization constant in the module."
- "A pSpecConstant entry contains a nullptr pValue."
- $X_RESULT_ERROR_INVALID_SPEC_ID:
- "Any id specified in a pSpecConstant entry is not a valid specialization constant identifier."
--- #--------------------------------------------------------------------------
type: function
desc: "Return platform native kernel handle."
Expand Down
5 changes: 5 additions & 0 deletions scripts/core/program.yml
Original file line number Diff line number Diff line change
Expand Up @@ -542,6 +542,11 @@ params:
returns:
- $X_RESULT_ERROR_INVALID_SIZE:
- "`count == 0`"
- $X_RESULT_ERROR_INVALID_VALUE:
- "A pSpecConstant entry contains a size that does not match that of the specialization constant in the module."
- "A pSpecConstant entry contains a nullptr pValue."
- $X_RESULT_ERROR_INVALID_SPEC_ID:
- "Any id specified in a pSpecConstant entry is not a valid specialization constant identifier."
--- #--------------------------------------------------------------------------
type: function
desc: "Return program native program handle."
Expand Down
5 changes: 5 additions & 0 deletions source/adapters/cuda/kernel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -410,3 +410,8 @@ UR_APIEXPORT ur_result_t UR_APICALL urKernelGetSuggestedLocalWorkSize(
pSuggestedLocalWorkSize);
return Result;
}

UR_APIEXPORT ur_result_t UR_APICALL urKernelSetSpecializationConstants(
ur_kernel_handle_t, uint32_t, const ur_specialization_constant_info_t *) {
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
}
2 changes: 1 addition & 1 deletion source/adapters/cuda/ur_interface_loader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ UR_DLLEXPORT ur_result_t UR_APICALL urGetKernelProcAddrTable(
pDdiTable->pfnSetArgSampler = urKernelSetArgSampler;
pDdiTable->pfnSetArgValue = urKernelSetArgValue;
pDdiTable->pfnSetExecInfo = urKernelSetExecInfo;
pDdiTable->pfnSetSpecializationConstants = nullptr;
pDdiTable->pfnSetSpecializationConstants = urKernelSetSpecializationConstants;
pDdiTable->pfnGetSuggestedLocalWorkSize = urKernelGetSuggestedLocalWorkSize;
return UR_RESULT_SUCCESS;
}
Expand Down
2 changes: 1 addition & 1 deletion source/adapters/native_cpu/kernel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ UR_APIEXPORT ur_result_t UR_APICALL urKernelSetSpecializationConstants(
std::ignore = count;
std::ignore = pSpecConstants;

DIE_NO_IMPLEMENTATION
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
}

UR_APIEXPORT ur_result_t UR_APICALL urKernelGetNativeHandle(
Expand Down
2 changes: 2 additions & 0 deletions source/adapters/opencl/common.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,8 @@ ur_result_t mapCLErrorToUR(cl_int Result) {
return UR_RESULT_ERROR_INVALID_QUEUE;
case CL_INVALID_ARG_SIZE:
return UR_RESULT_ERROR_INVALID_KERNEL_ARGUMENT_SIZE;
case CL_INVALID_SPEC_ID:
return UR_RESULT_ERROR_INVALID_SPEC_ID;
default:
return UR_RESULT_ERROR_UNKNOWN;
}
Expand Down
5 changes: 5 additions & 0 deletions source/adapters/opencl/kernel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -430,3 +430,8 @@ UR_APIEXPORT ur_result_t UR_APICALL urKernelGetSuggestedLocalWorkSize(
pGlobalWorkSize, pSuggestedLocalWorkSize));
return UR_RESULT_SUCCESS;
}

UR_APIEXPORT ur_result_t UR_APICALL urKernelSetSpecializationConstants(
ur_kernel_handle_t, uint32_t, const ur_specialization_constant_info_t *) {
return UR_RESULT_ERROR_UNSUPPORTED_FEATURE;
}
2 changes: 1 addition & 1 deletion source/adapters/opencl/ur_interface_loader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ UR_DLLEXPORT ur_result_t UR_APICALL urGetKernelProcAddrTable(
pDdiTable->pfnSetArgSampler = urKernelSetArgSampler;
pDdiTable->pfnSetArgValue = urKernelSetArgValue;
pDdiTable->pfnSetExecInfo = urKernelSetExecInfo;
pDdiTable->pfnSetSpecializationConstants = nullptr;
pDdiTable->pfnSetSpecializationConstants = urKernelSetSpecializationConstants;
pDdiTable->pfnGetSuggestedLocalWorkSize = urKernelGetSuggestedLocalWorkSize;
return UR_RESULT_SUCCESS;
}
Expand Down
10 changes: 10 additions & 0 deletions source/loader/ur_libapi.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3486,6 +3486,11 @@ ur_result_t UR_APICALL urProgramGetBuildInfo(
/// + `NULL == pSpecConstants`
/// - ::UR_RESULT_ERROR_INVALID_SIZE
/// + `count == 0`
/// - ::UR_RESULT_ERROR_INVALID_VALUE
/// + A pSpecConstant entry contains a size that does not match that of the specialization constant in the module.
/// + A pSpecConstant entry contains a nullptr pValue.
/// - ::UR_RESULT_ERROR_INVALID_SPEC_ID
/// + Any id specified in a pSpecConstant entry is not a valid specialization constant identifier.
ur_result_t UR_APICALL urProgramSetSpecializationConstants(
ur_program_handle_t hProgram, ///< [in] handle of the Program object
uint32_t count, ///< [in] the number of elements in the pSpecConstants array
Expand Down Expand Up @@ -4079,6 +4084,11 @@ ur_result_t UR_APICALL urKernelSetArgMemObj(
/// + `count == 0`
/// - ::UR_RESULT_ERROR_UNSUPPORTED_FEATURE
/// + If ::UR_DEVICE_INFO_KERNEL_SET_SPECIALIZATION_CONSTANTS query is false
/// - ::UR_RESULT_ERROR_INVALID_VALUE
/// + A pSpecConstant entry contains a size that does not match that of the specialization constant in the module.
/// + A pSpecConstant entry contains a nullptr pValue.
/// - ::UR_RESULT_ERROR_INVALID_SPEC_ID
/// + Any id specified in a pSpecConstant entry is not a valid specialization constant identifier.
ur_result_t UR_APICALL urKernelSetSpecializationConstants(
ur_kernel_handle_t hKernel, ///< [in] handle of the kernel object
uint32_t count, ///< [in] the number of elements in the pSpecConstants array
Expand Down
10 changes: 10 additions & 0 deletions source/ur_api.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2981,6 +2981,11 @@ ur_result_t UR_APICALL urProgramGetBuildInfo(
/// + `NULL == pSpecConstants`
/// - ::UR_RESULT_ERROR_INVALID_SIZE
/// + `count == 0`
/// - ::UR_RESULT_ERROR_INVALID_VALUE
/// + A pSpecConstant entry contains a size that does not match that of the specialization constant in the module.
/// + A pSpecConstant entry contains a nullptr pValue.
/// - ::UR_RESULT_ERROR_INVALID_SPEC_ID
/// + Any id specified in a pSpecConstant entry is not a valid specialization constant identifier.
ur_result_t UR_APICALL urProgramSetSpecializationConstants(
ur_program_handle_t hProgram, ///< [in] handle of the Program object
uint32_t count, ///< [in] the number of elements in the pSpecConstants array
Expand Down Expand Up @@ -3470,6 +3475,11 @@ ur_result_t UR_APICALL urKernelSetArgMemObj(
/// + `count == 0`
/// - ::UR_RESULT_ERROR_UNSUPPORTED_FEATURE
/// + If ::UR_DEVICE_INFO_KERNEL_SET_SPECIALIZATION_CONSTANTS query is false
/// - ::UR_RESULT_ERROR_INVALID_VALUE
/// + A pSpecConstant entry contains a size that does not match that of the specialization constant in the module.
/// + A pSpecConstant entry contains a nullptr pValue.
/// - ::UR_RESULT_ERROR_INVALID_SPEC_ID
/// + Any id specified in a pSpecConstant entry is not a valid specialization constant identifier.
ur_result_t UR_APICALL urKernelSetSpecializationConstants(
ur_kernel_handle_t hKernel, ///< [in] handle of the kernel object
uint32_t count, ///< [in] the number of elements in the pSpecConstants array
Expand Down
3 changes: 3 additions & 0 deletions test/conformance/kernel/kernel_adapter_level_zero_v2.match
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,9 @@ urKernelSetSpecializationConstantsTest.Success/Intel_R__oneAPI_Unified_Runtime_o
urKernelSetSpecializationConstantsTest.InvalidNullHandleKernel/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelSetSpecializationConstantsTest.InvalidNullPointerSpecConstants/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelSetSpecializationConstantsTest.InvalidSizeCount/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelSetSpecializationConstantsTest.InvalidValueSize/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelSetSpecializationConstantsTest.InvalidValueId/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelSetSpecializationConstantsTest.InvalidValuePtr/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelGetSuggestedLocalWorkSizeTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelGetSuggestedLocalWorkSizeTest.Success2D/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urKernelGetSuggestedLocalWorkSizeTest.Success3D/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
Expand Down
4 changes: 4 additions & 0 deletions test/conformance/kernel/kernel_adapter_native_cpu.match
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,10 @@ urKernelSetSpecializationConstantsTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU
urKernelSetSpecializationConstantsTest.InvalidNullHandleKernel/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelSetSpecializationConstantsTest.InvalidNullPointerSpecConstants/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelSetSpecializationConstantsTest.InvalidSizeCount/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelSetSpecializationConstantsTest.InvalidValueSize/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelSetSpecializationConstantsTest.InvalidValueId/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelSetSpecializationConstantsTest.InvalidValuePtr/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelSetSpecializationConstantsNegativeTest.Unsupported/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelGetSuggestedLocalWorkSizeTest.Success/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelGetSuggestedLocalWorkSizeTest.Success2D/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
urKernelGetSuggestedLocalWorkSizeTest.Success3D/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
Expand Down
47 changes: 47 additions & 0 deletions test/conformance/kernel/urKernelSetSpecializationConstants.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,28 @@ struct urKernelSetSpecializationConstantsTest : uur::urBaseKernelExecutionTest {
};
UUR_INSTANTIATE_KERNEL_TEST_SUITE_P(urKernelSetSpecializationConstantsTest);

struct urKernelSetSpecializationConstantsNegativeTest
: uur::urBaseKernelExecutionTest {
void SetUp() override {
UUR_RETURN_ON_FATAL_FAILURE(urBaseKernelExecutionTest::SetUp());
bool supports_kernel_spec_constant = false;
ASSERT_SUCCESS(urDeviceGetInfo(
device, UR_DEVICE_INFO_KERNEL_SET_SPECIALIZATION_CONSTANTS,
sizeof(supports_kernel_spec_constant),
&supports_kernel_spec_constant, nullptr));
if (supports_kernel_spec_constant) {
GTEST_SKIP() << "Device supports setting kernel spec constants.";
}
Build();
}

uint32_t spec_value = 42;
ur_specialization_constant_info_t info = {0, sizeof(spec_value),
&spec_value};
};
UUR_INSTANTIATE_KERNEL_TEST_SUITE_P(
urKernelSetSpecializationConstantsNegativeTest);

TEST_P(urKernelSetSpecializationConstantsTest, Success) {
ASSERT_SUCCESS(urKernelSetSpecializationConstants(kernel, 1, &info));

Expand All @@ -36,6 +58,11 @@ TEST_P(urKernelSetSpecializationConstantsTest, Success) {
ValidateBuffer<uint32_t>(buffer, sizeof(spec_value), spec_value);
}

TEST_P(urKernelSetSpecializationConstantsNegativeTest, Unsupported) {
ASSERT_EQ_RESULT(UR_RESULT_ERROR_UNSUPPORTED_FEATURE,
urKernelSetSpecializationConstants(kernel, 1, &info));
}

TEST_P(urKernelSetSpecializationConstantsTest, InvalidNullHandleKernel) {
ASSERT_EQ_RESULT(UR_RESULT_ERROR_INVALID_NULL_HANDLE,
urKernelSetSpecializationConstants(nullptr, 1, &info));
Expand All @@ -51,3 +78,23 @@ TEST_P(urKernelSetSpecializationConstantsTest, InvalidSizeCount) {
ASSERT_EQ_RESULT(UR_RESULT_ERROR_INVALID_SIZE,
urKernelSetSpecializationConstants(kernel, 0, &info));
}

TEST_P(urKernelSetSpecializationConstantsTest, InvalidValueSize) {
ur_specialization_constant_info_t bad_info = {0, 0x1000, &spec_value};
ASSERT_EQ_RESULT(UR_RESULT_ERROR_INVALID_VALUE,
urKernelSetSpecializationConstants(kernel, 1, &bad_info));
}

TEST_P(urKernelSetSpecializationConstantsTest, InvalidValueId) {
ur_specialization_constant_info_t bad_info = {999, sizeof(spec_value),
&spec_value};
ASSERT_EQ_RESULT(UR_RESULT_ERROR_INVALID_SPEC_ID,
urKernelSetSpecializationConstants(kernel, 1, &bad_info));
}

TEST_P(urKernelSetSpecializationConstantsTest, InvalidValuePtr) {
ur_specialization_constant_info_t bad_info = {0, sizeof(spec_value),
nullptr};
ASSERT_EQ_RESULT(UR_RESULT_ERROR_INVALID_VALUE,
urKernelSetSpecializationConstants(kernel, 1, &bad_info));
}
7 changes: 5 additions & 2 deletions test/conformance/program/program_adapter_cuda.match
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,8 @@ urProgramGetInfoTest.Success/NVIDIA_CUDA_BACKEND___{{.*}}___UR_PROGRAM_INFO_NUM_
urProgramGetInfoTest.Success/NVIDIA_CUDA_BACKEND___{{.*}}___UR_PROGRAM_INFO_KERNEL_NAMES
{{OPT}}urProgramSetSpecializationConstantsTest.Success/NVIDIA_CUDA_BACKEND___{{.*}}
{{OPT}}urProgramSetSpecializationConstantsTest.UseDefaultValue/NVIDIA_CUDA_BACKEND___{{.*}}
urProgramSetMultipleSpecializationConstantsTest.MultipleCalls/NVIDIA_CUDA_BACKEND___{{.*}}
urProgramSetMultipleSpecializationConstantsTest.SingleCall/NVIDIA_CUDA_BACKEND___{{.*}}
urProgramSetSpecializationConstantsTest.InvalidValueSize/NVIDIA_CUDA_BACKEND___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValueId/NVIDIA_CUDA_BACKEND___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValuePtr/NVIDIA_CUDA_BACKEND___{{.*}}_
urProgramSetMultipleSpecializationConstantsTest.MultipleCalls/NVIDIA_CUDA_BACKEND___{{.*}}_
urProgramSetMultipleSpecializationConstantsTest.SingleCall/NVIDIA_CUDA_BACKEND___{{.*}}_
4 changes: 4 additions & 0 deletions test/conformance/program/program_adapter_hip.match
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,11 @@ urProgramGetInfoTest.Success/AMD_HIP_BACKEND___{{.*}}___UR_PROGRAM_INFO_KERNEL_N
# HIP hasn't implemented urProgramLink
{{OPT}}urProgramLinkTest.Success/AMD_HIP_BACKEND___{{.*}}_

# Hip doesn't support specialization constants
urProgramSetSpecializationConstantsTest.Success/AMD_HIP_BACKEND___{{.*}}_
urProgramSetSpecializationConstantsTest.UseDefaultValue/AMD_HIP_BACKEND___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValueSize/AMD_HIP_BACKEND___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValueId/AMD_HIP_BACKEND___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValuePtr/AMD_HIP_BACKEND___{{.*}}_
urProgramSetMultipleSpecializationConstantsTest.MultipleCalls/AMD_HIP_BACKEND___{{.*}}_
urProgramSetMultipleSpecializationConstantsTest.SingleCall/AMD_HIP_BACKEND___{{.*}}_
5 changes: 4 additions & 1 deletion test/conformance/program/program_adapter_level_zero.match
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,7 @@ urProgramGetBuildInfoTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zer
urProgramGetFunctionPointerTest.InvalidKernelName/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramGetNativeHandleTest.Success/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
{{OPT}}urProgramLinkErrorTest.LinkFailure/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
{{OPT}}urProgramLinkErrorTest.SetOutputOnLinkError/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
{{OPT}}urProgramLinkErrorTest.SetOutputOnLinkError/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValueSize/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}
urProgramSetSpecializationConstantsTest.InvalidValueId/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}
urProgramSetSpecializationConstantsTest.InvalidValuePtr/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}
3 changes: 3 additions & 0 deletions test/conformance/program/program_adapter_level_zero_v2.match
Original file line number Diff line number Diff line change
Expand Up @@ -139,5 +139,8 @@ urProgramSetSpecializationConstantsTest.UseDefaultValue/Intel_R__oneAPI_Unified_
urProgramSetSpecializationConstantsTest.InvalidNullHandleProgram/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidNullPointerSpecConstants/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidSizeCount/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValueSize/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}
urProgramSetSpecializationConstantsTest.InvalidValueId/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramSetSpecializationConstantsTest.InvalidValuePtr/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramSetMultipleSpecializationConstantsTest.MultipleCalls/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
urProgramSetMultipleSpecializationConstantsTest.SingleCall/Intel_R__oneAPI_Unified_Runtime_over_Level_Zero___{{.*}}_
3 changes: 3 additions & 0 deletions test/conformance/program/program_adapter_native_cpu.match
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,9 @@
{{OPT}}urProgramSetSpecializationConstantsTest.InvalidNullHandleProgram/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}urProgramSetSpecializationConstantsTest.InvalidNullPointerSpecConstants/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}urProgramSetSpecializationConstantsTest.InvalidSizeCount/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}urProgramSetSpecializationConstantsTest.InvalidValueSize/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}urProgramSetSpecializationConstantsTest.InvalidValueId/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}urProgramSetSpecializationConstantsTest.InvalidValuePtr/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}urProgramSetMultipleSpecializationConstantsTest.MultipleCalls/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}urProgramSetMultipleSpecializationConstantsTest.SingleCall/SYCL_NATIVE_CPU___SYCL_Native_CPU__{{.*}}
{{OPT}}{{Segmentation fault|Aborted}}
Loading

0 comments on commit 1a78a53

Please sign in to comment.