Date: Sat, 20 May 2000 09:30:21 -0700 (PDT) From: Stefan Neis <neis@cdc.informatik.tu-darmstadt.de> To: freebsd-bugs@FreeBSD.org Subject: Re: i386/18560: libm's log1p not working as designed on Intel architectures. Message-ID: <200005201630.JAA53245@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR i386/18560; it has been noted by GNATS.
From: Stefan Neis <neis@cdc.informatik.tu-darmstadt.de>
To: Bruce Evans <bde@zeta.org.au>
Cc: freebsd-gnats-submit@FreeBSD.ORG
Subject: Re: i386/18560: libm's log1p not working as designed on Intel
architectures.
Date: Sat, 20 May 2000 18:27:53 +0200 (MET DST)
Hi,
> This is only an efficient bug under FreeBSD. log1p.S is too broken to
> use, so FreeBSD doesn't use it:
>
> You can find a correct version in glibc (version 2.1.1. at least).
I see.
> (Inlining acos doesn't help
> much because the inlined code is quite large and slow;
Interesting. I was under the impression that the inlined code is rather
small. :-?
double acos_inline(double x)
{
register double z;
asm("fmul": "=t" (z) : "0" (1+x), "u" (1-x) );
asm("fsqrt": "=t" (z) : "0" (z) );
asm("fpatan": "=t" (z) : "0" (1.0), "u" (z) );
if(_LIB_VERSION == _IEEE_ || isnan(x)) return z;
if(fabs(x)>1.0) {
return __kernel_standard(x,x,1); /* acos(|x|>1) */
} else
return z;
}
Anyway, thanks for taking the time to answer a not strictly BSD related
question.
Regards,
Stefan
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200005201630.JAA53245>
