ABGDXYZ in vectordev_mod

This commit is contained in:
Salvatore Filippone
2024-02-20 13:04:40 +01:00
parent 2391f64df6
commit 2a75d677d0
4 changed files with 48 additions and 4 deletions
+12 -1
View File
@@ -304,7 +304,6 @@ module psb_c_vectordev_mod
end function asumMultiVecDeviceFloatComplex
end interface
interface axpbyMultiVecDevice
function axpbyMultiVecDeviceFloatComplex(n,alpha,deviceVecA,beta,deviceVecB) &
& result(res) bind(c,name='axpbyMultiVecDeviceFloatComplex')
@@ -316,6 +315,18 @@ module psb_c_vectordev_mod
end function axpbyMultiVecDeviceFloatComplex
end interface
interface abgdxyzMultiVecDevice
function abgdxyzMultiVecDeviceFloatComplex(n,alpha,beta,gamma,delta,deviceVecX,&
& deviceVecY,deviceVecZ) &
& result(res) bind(c,name='abgdxyzMultiVecDeviceFloatComplex')
use iso_c_binding
integer(c_int) :: res
integer(c_int), value :: n
type(c_float_complex), value :: alpha, beta,gamma,delta
type(c_ptr), value :: deviceVecX, deviceVecY, deviceVecZ
end function abgdxyzMultiVecDeviceFloatComplex
end interface
interface axyMultiVecDevice
function axyMultiVecDeviceFloatComplex(n,alpha,deviceVecA,deviceVecB) &
& result(res) bind(c,name='axyMultiVecDeviceFloatComplex')
+12 -1
View File
@@ -304,7 +304,6 @@ module psb_d_vectordev_mod
end function asumMultiVecDeviceDouble
end interface
interface axpbyMultiVecDevice
function axpbyMultiVecDeviceDouble(n,alpha,deviceVecA,beta,deviceVecB) &
& result(res) bind(c,name='axpbyMultiVecDeviceDouble')
@@ -316,6 +315,18 @@ module psb_d_vectordev_mod
end function axpbyMultiVecDeviceDouble
end interface
interface abgdxyzMultiVecDevice
function abgdxyzMultiVecDeviceDouble(n,alpha,beta,gamma,delta,deviceVecX,&
& deviceVecY,deviceVecZ) &
& result(res) bind(c,name='abgdxyzMultiVecDeviceDouble')
use iso_c_binding
integer(c_int) :: res
integer(c_int), value :: n
type(c_double), value :: alpha, beta,gamma,delta
type(c_ptr), value :: deviceVecX, deviceVecY, deviceVecZ
end function abgdxyzMultiVecDeviceDouble
end interface
interface axyMultiVecDevice
function axyMultiVecDeviceDouble(n,alpha,deviceVecA,deviceVecB) &
& result(res) bind(c,name='axyMultiVecDeviceDouble')
+12 -1
View File
@@ -304,7 +304,6 @@ module psb_s_vectordev_mod
end function asumMultiVecDeviceFloat
end interface
interface axpbyMultiVecDevice
function axpbyMultiVecDeviceFloat(n,alpha,deviceVecA,beta,deviceVecB) &
& result(res) bind(c,name='axpbyMultiVecDeviceFloat')
@@ -316,6 +315,18 @@ module psb_s_vectordev_mod
end function axpbyMultiVecDeviceFloat
end interface
interface abgdxyzMultiVecDevice
function abgdxyzMultiVecDeviceFloat(n,alpha,beta,gamma,delta,deviceVecX,&
& deviceVecY,deviceVecZ) &
& result(res) bind(c,name='abgdxyzMultiVecDeviceFloat')
use iso_c_binding
integer(c_int) :: res
integer(c_int), value :: n
type(c_float), value :: alpha, beta,gamma,delta
type(c_ptr), value :: deviceVecX, deviceVecY, deviceVecZ
end function abgdxyzMultiVecDeviceFloat
end interface
interface axyMultiVecDevice
function axyMultiVecDeviceFloat(n,alpha,deviceVecA,deviceVecB) &
& result(res) bind(c,name='axyMultiVecDeviceFloat')
+12 -1
View File
@@ -304,7 +304,6 @@ module psb_z_vectordev_mod
end function asumMultiVecDeviceDoubleComplex
end interface
interface axpbyMultiVecDevice
function axpbyMultiVecDeviceDoubleComplex(n,alpha,deviceVecA,beta,deviceVecB) &
& result(res) bind(c,name='axpbyMultiVecDeviceDoubleComplex')
@@ -316,6 +315,18 @@ module psb_z_vectordev_mod
end function axpbyMultiVecDeviceDoubleComplex
end interface
interface abgdxyzMultiVecDevice
function abgdxyzMultiVecDeviceDoubleComplex(n,alpha,beta,gamma,delta,deviceVecX,&
& deviceVecY,deviceVecZ) &
& result(res) bind(c,name='abgdxyzMultiVecDeviceDoubleComplex')
use iso_c_binding
integer(c_int) :: res
integer(c_int), value :: n
type(c_double_complex), value :: alpha, beta,gamma,delta
type(c_ptr), value :: deviceVecX, deviceVecY, deviceVecZ
end function abgdxyzMultiVecDeviceDoubleComplex
end interface
interface axyMultiVecDevice
function axyMultiVecDeviceDoubleComplex(n,alpha,deviceVecA,deviceVecB) &
& result(res) bind(c,name='axyMultiVecDeviceDoubleComplex')