mirror of
https://github.com/vosen/ZLUDA.git
synced 2025-04-28 13:37:57 +03:00
34 lines
950 B
Rust
34 lines
950 B
Rust
mod r#impl;
|
|
|
|
macro_rules! unimplemented_fn {
|
|
($($abi:literal fn $fn_name:ident( $($arg_id:ident : $arg_type:ty),* ) -> $ret_type:ty;)*) => {
|
|
$(
|
|
#[no_mangle]
|
|
#[allow(improper_ctypes_definitions)]
|
|
pub extern $abi fn $fn_name ( $( $arg_id : $arg_type),* ) -> $ret_type {
|
|
r#impl::unimplemented()
|
|
}
|
|
)*
|
|
};
|
|
}
|
|
|
|
macro_rules! implemented_fn {
|
|
($($abi:literal fn $fn_name:ident( $($arg_id:ident : $arg_type:ty),* ) -> $ret_type:ty;)*) => {
|
|
$(
|
|
#[no_mangle]
|
|
#[allow(improper_ctypes_definitions)]
|
|
pub extern $abi fn $fn_name ( $( $arg_id : $arg_type),* ) -> $ret_type {
|
|
r#impl::$fn_name($($arg_id),*)
|
|
}
|
|
)*
|
|
};
|
|
}
|
|
|
|
cuda_base::nvml_function_declarations!(
|
|
unimplemented_fn,
|
|
implemented_fn <= [
|
|
nvmlErrorString,
|
|
nvmlInit_v2,
|
|
nvmlSystemGetDriverVersion
|
|
]
|
|
);
|