47 bind(c, name =
'opencl_masked_copy')
48 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
49 type(c_ptr),
value :: a_d, b_d, mask_d, strm
50 integer(c_int) :: n, n_mask
54 bind(c, name =
'opencl_masked_gather_copy')
55 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
56 type(c_ptr),
value :: a_d, b_d, mask_d, strm
57 integer(c_int) :: n, n_mask
61 strm) bind(c, name = 'opencl_masked_gather_copy_aligned')
62 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
63 type(c_ptr),
value :: a_d, b_d, mask_d, strm
64 integer(c_int) :: n, n_mask
68 bind(c, name =
'opencl_masked_scatter_copy')
69 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
70 type(c_ptr),
value :: a_d, b_d, mask_d, strm
71 integer(c_int) :: n, n_mask
75 bind(c, name =
'opencl_cfill_mask')
76 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
78 type(c_ptr),
value :: a_d
81 type(c_ptr),
value :: mask_d
82 integer(c_int) :: n_mask
83 type(c_ptr),
value :: strm
184 bind(c, name =
'opencl_add4')
185 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
187 type(c_ptr),
value :: a_d, b_d, c_d, d_d, strm
231 bind(c, name =
'opencl_add3s2')
232 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
235 type(c_ptr),
value :: a_d, b_d, c_d, strm
241 bind(c, name =
'opencl_add4s3')
242 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
245 type(c_ptr),
value :: a_d, b_d, c_d, d_d, strm
246 real(c_rp) :: c1, c2, c3
251 c1, c2, c3, c4, n, strm) &
252 bind(c, name =
'opencl_add5s4')
253 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
256 type(c_ptr),
value :: a_d, b_d, c_d, d_d, e_d, strm
257 real(c_rp) :: c1, c2, c3, c4
334 bind(c, name =
'opencl_addcol4')
335 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
337 type(c_ptr),
value :: a_d, b_d, c_d, d_d, strm
352 bind(c, name =
'opencl_vdot3')
353 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
355 type(c_ptr),
value :: dot_d, u1_d, u2_d, u3_d, v1_d, v2_d, v3_d
356 type(c_ptr),
value :: strm
361 w1_d, w2_d, w3_d, n, strm) &
362 bind(c, name =
'opencl_vcross')
363 use,
intrinsic :: iso_c_binding, only : c_int, c_ptr
364 type(c_ptr),
value :: u1_d, u2_d, u3_d
365 type(c_ptr),
value :: v1_d, v2_d, v3_d
366 type(c_ptr),
value :: w1_d, w2_d, w3_d
367 type(c_ptr),
value :: strm
381 bind(c, name =
'opencl_glsc3_many')
382 use,
intrinsic :: iso_c_binding, only : c_ptr, c_int
385 integer(c_int) :: j, n
386 type(c_ptr),
value :: w_d, v_d_d, mult_d, strm