35 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
41 bind(c, name =
'hip_zero_dirichlet_apply_scalar')
42 use,
intrinsic :: iso_c_binding
45 type(c_ptr),
value :: msk, x
51 bind(c, name =
'hip_zero_dirichlet_apply_vector')
52 use,
intrinsic :: iso_c_binding
55 type(c_ptr),
value :: msk, x, y, z
61 bind(c, name =
'cuda_zero_dirichlet_apply_scalar')
62 use,
intrinsic :: iso_c_binding
65 type(c_ptr),
value :: msk, x
71 bind(c, name =
'cuda_zero_dirichlet_apply_vector')
72 use,
intrinsic :: iso_c_binding
75 type(c_ptr),
value :: msk, x, y, z
81 bind(c, name =
'opencl_zero_dirichlet_apply_scalar')
82 use,
intrinsic :: iso_c_binding
85 type(c_ptr),
value :: msk, x
91 bind(c, name =
'opencl_zero_dirichlet_apply_vector')
92 use,
intrinsic :: iso_c_binding
95 type(c_ptr),
value :: msk, x, y, z
106 integer,
intent(in) :: m
107 type(c_ptr) :: msk, x
116 call neko_error(
'No device backend configured')
122 integer,
intent(in) :: m
123 type(c_ptr) :: msk, x, y, z
132 call neko_error(
'No device backend configured')
subroutine, public device_zero_dirichlet_apply_scalar(msk, x, m)
subroutine, public device_zero_dirichlet_apply_vector(msk, x, y, z, m)
void opencl_zero_dirichlet_apply_vector(void *msk, void *x, void *y, void *z, int *m)
void opencl_zero_dirichlet_apply_scalar(void *msk, void *x, int *m)
void cuda_zero_dirichlet_apply_vector(void *msk, void *x, void *y, void *z, int *m)
void cuda_zero_dirichlet_apply_scalar(void *msk, void *x, int *m)