@@ -481,7 +481,8 @@ typedef enum ur_result_t {
481
481
UR_RESULT_ERROR_UNSUPPORTED_IMAGE_FORMAT = 55, ///< [Validation] image format is not supported by the device
482
482
UR_RESULT_ERROR_INVALID_NATIVE_BINARY = 56, ///< [Validation] native binary is not supported by the device
483
483
UR_RESULT_ERROR_INVALID_GLOBAL_NAME = 57, ///< [Validation] global variable is not found in the program
484
- UR_RESULT_ERROR_INVALID_FUNCTION_NAME = 58, ///< [Validation] function name is not found in the program
484
+ UR_RESULT_ERROR_FUNCTION_ADDRESS_NOT_AVAILABLE = 58, ///< [Validation] function name is in the program but its address could not
485
+ ///< be determined
485
486
UR_RESULT_ERROR_INVALID_GROUP_SIZE_DIMENSION = 59, ///< [Validation] group size dimension is not valid for the kernel or
486
487
///< device
487
488
UR_RESULT_ERROR_INVALID_GLOBAL_WIDTH_DIMENSION = 60, ///< [Validation] global width dimension is not valid for the kernel or
@@ -1597,6 +1598,9 @@ typedef enum ur_device_info_t {
1597
1598
///< this composite device.
1598
1599
UR_DEVICE_INFO_COMPOSITE_DEVICE = 117, ///< [::ur_device_handle_t] The composite device containing this component
1599
1600
///< device.
1601
+ UR_DEVICE_INFO_GLOBAL_VARIABLE_SUPPORT = 118, ///< [::ur_bool_t] return true if the device supports the
1602
+ ///< `EnqueueDeviceGlobalVariableWrite` and
1603
+ ///< `EnqueueDeviceGlobalVariableRead` entry points.
1600
1604
UR_DEVICE_INFO_COMMAND_BUFFER_SUPPORT_EXP = 0x1000, ///< [::ur_bool_t] Returns true if the device supports the use of
1601
1605
///< command-buffers.
1602
1606
UR_DEVICE_INFO_COMMAND_BUFFER_UPDATE_SUPPORT_EXP = 0x1001, ///< [::ur_bool_t] Returns true if the device supports updating the kernel
@@ -2556,8 +2560,8 @@ typedef struct ur_image_desc_t {
2556
2560
size_t arraySize; ///< [in] image array size
2557
2561
size_t rowPitch; ///< [in] image row pitch
2558
2562
size_t slicePitch; ///< [in] image slice pitch
2559
- uint32_t numMipLevel; ///< [in] number of MIP levels
2560
- uint32_t numSamples; ///< [in] number of samples
2563
+ uint32_t numMipLevel; ///< [in] number of MIP levels, must be `0`
2564
+ uint32_t numSamples; ///< [in] number of samples, must be `0`
2561
2565
2562
2566
} ur_image_desc_t;
2563
2567
@@ -2601,6 +2605,10 @@ typedef struct ur_image_desc_t {
2601
2605
/// - ::UR_RESULT_ERROR_INVALID_VALUE
2602
2606
/// - ::UR_RESULT_ERROR_INVALID_IMAGE_FORMAT_DESCRIPTOR
2603
2607
/// + `pImageDesc && UR_MEM_TYPE_IMAGE1D_ARRAY < pImageDesc->type`
2608
+ /// + `pImageDesc && pImageDesc->numMipLevel != 0`
2609
+ /// + `pImageDesc && pImageDesc->numSamples != 0`
2610
+ /// + `pImageDesc && pImageDesc->rowPitch != 0 && pHost == nullptr`
2611
+ /// + `pImageDesc && pImageDesc->slicePitch != 0 && pHost == nullptr`
2604
2612
/// - ::UR_RESULT_ERROR_INVALID_IMAGE_SIZE
2605
2613
/// - ::UR_RESULT_ERROR_INVALID_OPERATION
2606
2614
/// - ::UR_RESULT_ERROR_INVALID_HOST_PTR
@@ -4355,8 +4363,8 @@ urProgramRelease(
4355
4363
/// @details
4356
4364
/// - Retrieves a pointer to the functions with the given name and defined
4357
4365
/// in the given program.
4358
- /// - ::UR_RESULT_ERROR_INVALID_FUNCTION_NAME is returned if the function
4359
- /// can not be obtained.
4366
+ /// - ::UR_RESULT_ERROR_FUNCTION_ADDRESS_NOT_AVAILABLE is returned if the
4367
+ /// function can not be obtained.
4360
4368
/// - The application may call this function from simultaneous threads for
4361
4369
/// the same device.
4362
4370
/// - The implementation of this function should be thread-safe.
@@ -4376,6 +4384,10 @@ urProgramRelease(
4376
4384
/// - ::UR_RESULT_ERROR_INVALID_NULL_POINTER
4377
4385
/// + `NULL == pFunctionName`
4378
4386
/// + `NULL == ppFunctionPointer`
4387
+ /// - ::UR_RESULT_ERROR_INVALID_KERNEL_NAME
4388
+ /// + If `pFunctionName` couldn't be found in `hProgram`.
4389
+ /// - ::UR_RESULT_ERROR_FUNCTION_ADDRESS_NOT_AVAILABLE
4390
+ /// + If `pFunctionName` could be located, but its address couldn't be retrieved.
4379
4391
UR_APIEXPORT ur_result_t UR_APICALL
4380
4392
urProgramGetFunctionPointer(
4381
4393
ur_device_handle_t hDevice, ///< [in] handle of the device to retrieve pointer for.
@@ -4777,7 +4789,7 @@ urKernelSetArgLocal(
4777
4789
/// @brief Get Kernel object information
4778
4790
typedef enum ur_kernel_info_t {
4779
4791
UR_KERNEL_INFO_FUNCTION_NAME = 0, ///< [char[]] Return null-terminated kernel function name.
4780
- UR_KERNEL_INFO_NUM_ARGS = 1, ///< [size_t ] Return Kernel number of arguments.
4792
+ UR_KERNEL_INFO_NUM_ARGS = 1, ///< [uint32_t ] Return Kernel number of arguments.
4781
4793
UR_KERNEL_INFO_REFERENCE_COUNT = 2, ///< [uint32_t] Reference count of the kernel object.
4782
4794
///< The reference count returned should be considered immediately stale.
4783
4795
///< It is unsuitable for general use in applications. This feature is
0 commit comments