diff --git a/src/gallium/frontends/rusticl/api/icd.rs b/src/gallium/frontends/rusticl/api/icd.rs index b0838fbb971..0f2dd948781 100644 --- a/src/gallium/frontends/rusticl/api/icd.rs +++ b/src/gallium/frontends/rusticl/api/icd.rs @@ -126,7 +126,7 @@ pub static DISPATCH: cl_icd_dispatch = cl_icd_dispatch { clGetKernelArgInfo: Some(cl_get_kernel_arg_info), clEnqueueFillBuffer: Some(cl_enqueue_fill_buffer), clEnqueueFillImage: Some(cl_enqueue_fill_image), - clEnqueueMigrateMemObjects: None, + clEnqueueMigrateMemObjects: Some(cl_enqueue_migrate_mem_objects), clEnqueueMarkerWithWaitList: Some(cl_enqueue_marker_with_wait_list), clEnqueueBarrierWithWaitList: Some(cl_enqueue_barrier_with_wait_list), clGetExtensionFunctionAddressForPlatform: None, @@ -1420,6 +1420,26 @@ extern "C" fn cl_enqueue_fill_image( CL_OUT_OF_HOST_MEMORY } +extern "C" fn cl_enqueue_migrate_mem_objects( + command_queue: cl_command_queue, + num_mem_objects: cl_uint, + mem_objects: *const cl_mem, + flags: cl_mem_migration_flags, + num_events_in_wait_list: cl_uint, + event_wait_list: *const cl_event, + event: *mut cl_event, +) -> cl_int { + match_err!(enqueue_migrate_mem_objects( + command_queue, + num_mem_objects, + mem_objects, + flags, + num_events_in_wait_list, + event_wait_list, + event, + )) +} + extern "C" fn cl_enqueue_marker_with_wait_list( command_queue: cl_command_queue, num_events_in_wait_list: cl_uint, diff --git a/src/gallium/frontends/rusticl/api/memory.rs b/src/gallium/frontends/rusticl/api/memory.rs index 79762d0d15f..9d26c8d6401 100644 --- a/src/gallium/frontends/rusticl/api/memory.rs +++ b/src/gallium/frontends/rusticl/api/memory.rs @@ -1505,3 +1505,16 @@ pub fn enqueue_unmap_mem_object( }), ) } + +pub fn enqueue_migrate_mem_objects( + _command_queue: cl_command_queue, + _num_mem_objects: cl_uint, + _mem_objects: *const cl_mem, + _flags: cl_mem_migration_flags, + _num_events_in_wait_list: cl_uint, + _event_wait_list: *const cl_event, + _event: *mut cl_event, +) -> CLResult<()> { + println!("enqueue_migrate_mem_objects not implemented"); + Err(CL_OUT_OF_HOST_MEMORY) +}