diff options
Diffstat (limited to 'src/math')
-rw-r--r-- | src/math/s390x/fma.c | 7 | ||||
-rw-r--r-- | src/math/s390x/fmaf.c | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/math/s390x/fma.c b/src/math/s390x/fma.c new file mode 100644 index 00000000..86da0e49 --- /dev/null +++ b/src/math/s390x/fma.c @@ -0,0 +1,7 @@ +#include <math.h> + +double fma(double x, double y, double z) +{ + __asm__ ("madbr %0, %1, %2" : "+f"(z) : "f"(x), "f"(y)); + return z; +} diff --git a/src/math/s390x/fmaf.c b/src/math/s390x/fmaf.c new file mode 100644 index 00000000..f1aec6ad --- /dev/null +++ b/src/math/s390x/fmaf.c @@ -0,0 +1,7 @@ +#include <math.h> + +float fmaf(float x, float y, float z) +{ + __asm__ ("maebr %0, %1, %2" : "+f"(z) : "f"(x), "f"(y)); + return z; +} |