diff --git a/libclc/spirv/lib/SOURCES b/libclc/spirv/lib/SOURCES --- a/libclc/spirv/lib/SOURCES +++ b/libclc/spirv/lib/SOURCES @@ -41,6 +41,10 @@ ../../generic/lib/math/exp2.cl ../../generic/lib/math/clc_exp10.cl ../../generic/lib/math/exp10.cl +../../generic/lib/math/clc_fma.cl +math/fma.cl +../../generic/lib/math/clc_fmod.cl +../../generic/lib/math/fmod.cl ../../generic/lib/math/fract.cl ../../generic/lib/math/frexp.cl ../../generic/lib/math/half_rsqrt.cl @@ -48,6 +52,8 @@ ../../generic/lib/math/clc_hypot.cl ../../generic/lib/math/hypot.cl ../../generic/lib/math/ilogb.cl +../../generic/lib/math/clc_ldexp.cl +../../generic/lib/math/ldexp.cl ../../generic/lib/math/lgamma.cl ../../generic/lib/math/lgamma_r.cl ../../generic/lib/math/log.cl diff --git a/libclc/spirv/lib/math/fma.cl b/libclc/spirv/lib/math/fma.cl new file mode 100644 --- /dev/null +++ b/libclc/spirv/lib/math/fma.cl @@ -0,0 +1,6 @@ +#include +#include + +#define __CLC_BODY +#define __FLOAT_ONLY +#include diff --git a/libclc/spirv/lib/math/fma.inc b/libclc/spirv/lib/math/fma.inc new file mode 100644 --- /dev/null +++ b/libclc/spirv/lib/math/fma.inc @@ -0,0 +1,3 @@ +_CLC_DEF _CLC_OVERLOAD __CLC_GENTYPE fma(__CLC_GENTYPE a, __CLC_GENTYPE b, __CLC_GENTYPE c) { + return __clc_sw_fma(a, b, c); +} diff --git a/libclc/spirv64/lib/SOURCES b/libclc/spirv64/lib/SOURCES --- a/libclc/spirv64/lib/SOURCES +++ b/libclc/spirv64/lib/SOURCES @@ -41,6 +41,10 @@ ../../generic/lib/math/exp2.cl ../../generic/lib/math/clc_exp10.cl ../../generic/lib/math/exp10.cl +../../generic/lib/math/clc_fma.cl +math/fma.cl +../../generic/lib/math/clc_fmod.cl +../../generic/lib/math/fmod.cl ../../generic/lib/math/fract.cl ../../generic/lib/math/frexp.cl ../../generic/lib/math/half_rsqrt.cl @@ -48,6 +52,8 @@ ../../generic/lib/math/clc_hypot.cl ../../generic/lib/math/hypot.cl ../../generic/lib/math/ilogb.cl +../../generic/lib/math/clc_ldexp.cl +../../generic/lib/math/ldexp.cl ../../generic/lib/math/lgamma.cl ../../generic/lib/math/lgamma_r.cl ../../generic/lib/math/log.cl diff --git a/libclc/spirv64/lib/math/fma.cl b/libclc/spirv64/lib/math/fma.cl new file mode 100644 --- /dev/null +++ b/libclc/spirv64/lib/math/fma.cl @@ -0,0 +1,6 @@ +#include +#include + +#define __CLC_BODY +#define __FLOAT_ONLY +#include diff --git a/libclc/spirv64/lib/math/fma.inc b/libclc/spirv64/lib/math/fma.inc new file mode 100644 --- /dev/null +++ b/libclc/spirv64/lib/math/fma.inc @@ -0,0 +1,3 @@ +_CLC_DEF _CLC_OVERLOAD __CLC_GENTYPE fma(__CLC_GENTYPE a, __CLC_GENTYPE b, __CLC_GENTYPE c) { + return __clc_sw_fma(a, b, c); +}