summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2003-05-10 00:47:52 +0000
committerpeter <peter@FreeBSD.org>2003-05-10 00:47:52 +0000
commitdba87522febe69543d7e0e418541ddfd1d34560c (patch)
tree6f6fcef89221cfc47fcd0c63a5912e168f61bb37
parent464e5c50c35a4007f6499c990dde08f262ff5566 (diff)
downloadFreeBSD-src-dba87522febe69543d7e0e418541ddfd1d34560c.zip
FreeBSD-src-dba87522febe69543d7e0e418541ddfd1d34560c.tar.gz
Update ldexp.c for amd64.
-rw-r--r--lib/libc/amd64/gen/Makefile.inc2
-rw-r--r--lib/libc/amd64/gen/ldexp.c6
2 files changed, 1 insertions, 7 deletions
diff --git a/lib/libc/amd64/gen/Makefile.inc b/lib/libc/amd64/gen/Makefile.inc
index 9312ecd..15a1f2f 100644
--- a/lib/libc/amd64/gen/Makefile.inc
+++ b/lib/libc/amd64/gen/Makefile.inc
@@ -3,4 +3,4 @@
SRCS+= _setjmp.S setjmp.S sigsetjmp.S \
fabs.S modf.S \
- frexp.c infinity.c isinf.c
+ frexp.c infinity.c isinf.c ldexp.c
diff --git a/lib/libc/amd64/gen/ldexp.c b/lib/libc/amd64/gen/ldexp.c
index 65c2748..9b8c1c4 100644
--- a/lib/libc/amd64/gen/ldexp.c
+++ b/lib/libc/amd64/gen/ldexp.c
@@ -58,16 +58,10 @@ ldexp (double value, int exp)
double temp, texp, temp2;
texp = exp;
#ifdef __GNUC__
-#if __GNUC__ >= 2
asm ("fscale "
: "=u" (temp2), "=t" (temp)
: "0" (texp), "1" (value));
#else
- asm ("fscale ; fxch %%st(1) ; fstp%L1 %1 "
- : "=f" (temp), "=0" (temp2)
- : "0" (texp), "f" (value));
-#endif
-#else
error unknown asm
#endif
return (temp);
OpenPOWER on IntegriCloud