Module: wine Branch: master Commit: ceb72abde28a5dbe61381278b01cf9faaa522464 URL: https://source.winehq.org/git/wine.git/?a=commit;h=ceb72abde28a5dbe61381278b...
Author: Zebediah Figura z.figura12@gmail.com Date: Thu Mar 18 23:06:31 2021 -0500
opencl: Don't bother generating a Unix function table entry for clGetExtensionFunctionAddress().
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/opencl/make_opencl | 15 +++++++++++++++ dlls/opencl/unix_thunks.c | 6 ------ dlls/opencl/unixlib.h | 1 - 3 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/dlls/opencl/make_opencl b/dlls/opencl/make_opencl index 4859a45b292..72b7386d1e2 100755 --- a/dlls/opencl/make_opencl +++ b/dlls/opencl/make_opencl @@ -238,6 +238,18 @@ sub needs_unix_wrapper($) return defined $funcs{$name}; }
+# don't bother putting unused functions in the interface +sub needs_unix_function($) +{ + my %funcs = + ( + "clGetExtensionFunctionAddress" => 1, + ); + my $name = shift; + + return not defined $funcs{$name}; +} + sub generate_struct($) { my $type = shift; @@ -382,6 +394,7 @@ EOF
foreach (sort keys %core_functions) { + next unless needs_unix_function( $_ ); next if needs_unix_wrapper( $_ ); print UNIX "\n", generate_unix_thunk( $_, $core_functions{$_} ); } @@ -389,6 +402,7 @@ foreach (sort keys %core_functions) print UNIX "\nconst struct opencl_funcs funcs =\n{\n"; foreach (sort keys %core_functions) { + next unless needs_unix_function( $_ ); print UNIX " wrap_" . $_ . ",\n"; } print UNIX "};\n"; @@ -403,6 +417,7 @@ print UNIXHEADER "/* Automatically generated from OpenCL registry files; DO NOT print UNIXHEADER "struct opencl_funcs\n{\n"; foreach (sort keys %core_functions) { + next unless needs_unix_function( $_ ); print UNIXHEADER get_func_proto( " %s (WINAPI *p%s)(%s);\n", $_, $core_functions{$_} ); } print UNIXHEADER "};\n\n"; diff --git a/dlls/opencl/unix_thunks.c b/dlls/opencl/unix_thunks.c index 084131468d6..0fe3a081e0b 100644 --- a/dlls/opencl/unix_thunks.c +++ b/dlls/opencl/unix_thunks.c @@ -172,11 +172,6 @@ static cl_int WINAPI wrap_clGetEventProfilingInfo( cl_event event, cl_profiling_ return clGetEventProfilingInfo( event, param_name, param_value_size, param_value, param_value_size_ret ); }
-static void* WINAPI wrap_clGetExtensionFunctionAddress( const char* func_name ) -{ - return clGetExtensionFunctionAddress( func_name ); -} - static cl_int WINAPI wrap_clGetImageInfo( cl_mem image, cl_image_info param_name, size_t param_value_size, void* param_value, size_t* param_value_size_ret ) { return clGetImageInfo( image, param_name, param_value_size, param_value, param_value_size_ret ); @@ -356,7 +351,6 @@ const struct opencl_funcs funcs = wrap_clGetDeviceInfo, wrap_clGetEventInfo, wrap_clGetEventProfilingInfo, - wrap_clGetExtensionFunctionAddress, wrap_clGetImageInfo, wrap_clGetKernelInfo, wrap_clGetKernelWorkGroupInfo, diff --git a/dlls/opencl/unixlib.h b/dlls/opencl/unixlib.h index b6e53c30330..e0d01317db7 100644 --- a/dlls/opencl/unixlib.h +++ b/dlls/opencl/unixlib.h @@ -39,7 +39,6 @@ struct opencl_funcs cl_int (WINAPI *pclGetDeviceInfo)( cl_device_id device, cl_device_info param_name, size_t param_value_size, void* param_value, size_t* param_value_size_ret ); cl_int (WINAPI *pclGetEventInfo)( cl_event event, cl_event_info param_name, size_t param_value_size, void* param_value, size_t* param_value_size_ret ); cl_int (WINAPI *pclGetEventProfilingInfo)( cl_event event, cl_profiling_info param_name, size_t param_value_size, void* param_value, size_t* param_value_size_ret ); - void* (WINAPI *pclGetExtensionFunctionAddress)( const char* func_name ); cl_int (WINAPI *pclGetImageInfo)( cl_mem image, cl_image_info param_name, size_t param_value_size, void* param_value, size_t* param_value_size_ret ); cl_int (WINAPI *pclGetKernelInfo)( cl_kernel kernel, cl_kernel_info param_name, size_t param_value_size, void* param_value, size_t* param_value_size_ret ); cl_int (WINAPI *pclGetKernelWorkGroupInfo)( cl_kernel kernel, cl_device_id device, cl_kernel_work_group_info param_name, size_t param_value_size, void* param_value, size_t* param_value_size_ret );