Remove the code and an associated comment for gcc 1.x compatibility
and fix a typo in the !__GNUC__ case.
This commit is contained in:
parent
0f6da645e5
commit
a94707138b
@ -49,8 +49,6 @@ __FBSDID("$FreeBSD$");
|
||||
|
||||
/*
|
||||
* We do the conversion in C to let gcc optimize it away, if possible.
|
||||
* The "fxch ; fstp" stuff is because value is still on the stack
|
||||
* (stupid 8087!).
|
||||
*/
|
||||
double
|
||||
ldexp (double value, int exp)
|
||||
@ -58,17 +56,11 @@ 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
|
||||
#error unknown asm
|
||||
#endif
|
||||
return (temp);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user