rusticl/kernel: add stub for clGetKernelSubGroupInfo

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>
This commit is contained in:
Karol Herbst 2022-03-20 22:40:14 +01:00 committed by Marge Bot
parent e646a30925
commit 039c24a2ca
2 changed files with 29 additions and 10 deletions

View file

@ -1656,17 +1656,22 @@ extern "C" fn cl_get_device_and_host_timer(
}
extern "C" fn cl_get_kernel_sub_group_info(
_kernel: cl_kernel,
_device: cl_device_id,
_param_name: cl_kernel_sub_group_info,
_input_value_size: usize,
_input_value: *const ::std::os::raw::c_void,
_param_value_size: usize,
_param_value: *mut ::std::os::raw::c_void,
_param_value_size_ret: *mut usize,
kernel: cl_kernel,
device: cl_device_id,
param_name: cl_kernel_sub_group_info,
input_value_size: usize,
input_value: *const ::std::os::raw::c_void,
param_value_size: usize,
param_value: *mut ::std::os::raw::c_void,
param_value_size_ret: *mut usize,
) -> cl_int {
println!("cl_get_kernel_sub_group_info not implemented");
CL_OUT_OF_HOST_MEMORY
match_err!(kernel.get_info_obj(
(device, input_value_size, input_value),
param_name,
param_value_size,
param_value,
param_value_size_ret,
))
}
extern "C" fn cl_set_program_release_callback(

View file

@ -14,6 +14,7 @@ use self::mesa_rust_util::string::*;
use self::rusticl_opencl_gen::*;
use std::collections::HashSet;
use std::os::raw::c_void;
use std::ptr;
use std::slice;
use std::sync::Arc;
@ -101,6 +102,19 @@ impl CLInfoObj<cl_kernel_work_group_info, cl_device_id> for cl_kernel {
}
}
impl CLInfoObj<cl_kernel_sub_group_info, (cl_device_id, usize, *const c_void)> for cl_kernel {
fn query(
&self,
(d, _input_value_size, _input_value): (cl_device_id, usize, *const c_void),
_q: cl_program_build_info,
) -> CLResult<Vec<u8>> {
let _kernel = self.get_ref()?;
let _dev = d.get_arc()?;
Err(CL_INVALID_OPERATION)
}
}
const ZERO_ARR: [usize; 3] = [0; 3];
/// # Safety