@@ -252,6 +252,7 @@ typedef enum ur_structure_type_t {
252
252
UR_STRUCTURE_TYPE_SAMPLER_NATIVE_PROPERTIES = 24 , ///< ::ur_sampler_native_properties_t
253
253
UR_STRUCTURE_TYPE_QUEUE_NATIVE_DESC = 25 , ///< ::ur_queue_native_desc_t
254
254
UR_STRUCTURE_TYPE_DEVICE_PARTITION_PROPERTIES = 26 , ///< ::ur_device_partition_properties_t
255
+ UR_STRUCTURE_TYPE_MEM_OBJ_PROPERTIES = 27 , ///< ::ur_mem_obj_properties_t
255
256
/// @cond
256
257
UR_STRUCTURE_TYPE_FORCE_UINT32 = 0x7fffffff
257
258
/// @endcond
@@ -3837,6 +3838,15 @@ urKernelSetArgSampler(
3837
3838
ur_sampler_handle_t hArgValue ///< [in] handle of Sampler object.
3838
3839
);
3839
3840
3841
+ ///////////////////////////////////////////////////////////////////////////////
3842
+ /// @brief Memory object properties
3843
+ typedef struct ur_mem_obj_properties_t {
3844
+ ur_structure_type_t stype ; ///< [in] type of this structure, must be
3845
+ ///< ::UR_STRUCTURE_TYPE_MEM_OBJ_PROPERTIES
3846
+ void * pNext ; ///< [in,out][optional] pointer to extension-specific structure
3847
+ ur_mem_flags_t memory_access ; ///< [in] Memory access flag. Allowed values are: UR_MEM_FLAG_READ_WRITE, UR_MEM_FLAG_WRITE_ONLY, UR_MEM_FLAG_READ_ONLY.
3848
+ } ur_mem_obj_properties_t ;
3849
+
3840
3850
///////////////////////////////////////////////////////////////////////////////
3841
3851
/// @brief Set a Memory object as the argument value of a Kernel.
3842
3852
///
@@ -3856,7 +3866,8 @@ UR_APIEXPORT ur_result_t UR_APICALL
3856
3866
urKernelSetArgMemObj (
3857
3867
ur_kernel_handle_t hKernel , ///< [in] handle of the kernel object
3858
3868
uint32_t argIndex , ///< [in] argument index in range [0, num args - 1]
3859
- ur_mem_handle_t hArgValue ///< [in][optional] handle of Memory object.
3869
+ ur_mem_handle_t hArgValue , ///< [in][optional] handle of Memory object.
3870
+ const ur_mem_obj_properties_t * pProperties ///< [in][optional] pointer to memory object usage properties.
3860
3871
);
3861
3872
3862
3873
///////////////////////////////////////////////////////////////////////////////
@@ -6461,6 +6472,7 @@ typedef struct ur_kernel_set_arg_mem_obj_params_t {
6461
6472
ur_kernel_handle_t * phKernel ;
6462
6473
uint32_t * pargIndex ;
6463
6474
ur_mem_handle_t * phArgValue ;
6475
+ const ur_mem_obj_properties_t * pProperties ;
6464
6476
} ur_kernel_set_arg_mem_obj_params_t ;
6465
6477
6466
6478
///////////////////////////////////////////////////////////////////////////////
0 commit comments