summaryrefslogtreecommitdiff
path: root/src/math/powerpc/fabsf.c
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2018-09-20 23:14:11 +0000
committerRich Felker <dalias@aerifal.cx>2018-10-15 14:41:59 -0400
commit7c5f3bb955123ba65bbdedee0e4499ef78a5747c (patch)
treecb05a4518e85d56141d0e2e0ebb03ba312dfe470 /src/math/powerpc/fabsf.c
parent1da534ada8a66424e0d23e94ab6750b689be6d64 (diff)
downloadmusl-7c5f3bb955123ba65bbdedee0e4499ef78a5747c.tar.gz
powerpc: add single instruction fabs, fabsf, fma, fmaf, sqrt, sqrtf
These are only available on hard float target and sqrt is not available in the base ISA, so further check is used.
Diffstat (limited to 'src/math/powerpc/fabsf.c')
-rw-r--r--src/math/powerpc/fabsf.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/math/powerpc/fabsf.c b/src/math/powerpc/fabsf.c
new file mode 100644
index 00000000..d88b5911
--- /dev/null
+++ b/src/math/powerpc/fabsf.c
@@ -0,0 +1,15 @@
+#include <math.h>
+
+#ifdef _SOFT_FLOAT
+
+#include "../fabsf.c"
+
+#else
+
+float fabsf(float x)
+{
+ __asm__ ("fabs %0, %1" : "=f"(x) : "f"(x));
+ return x;
+}
+
+#endif