Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Dec 2002 15:40:03 -0800 (PST)
From:      Mikhail Teterin <mi+mx@aldan.algebra.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: bin/43299: march=pentium4 miscompiles msun/src/e_pow.c
Message-ID:  <200212172340.gBHNe3x8088438@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/43299; it has been noted by GNATS.

From: Mikhail Teterin <mi+mx@aldan.algebra.com>
To: freebsd-gnats-submit@FreeBSD.org, mi@aldan.algebra.com
Cc: deischen@FreeBSD.org, bde@FreeBSD.org
Subject: Re: bin/43299: march=pentium4 miscompiles msun/src/e_pow.c
Date: Tue, 17 Dec 2002 18:41:46 -0500

 The described problem no longer exists. Probably -- thanks to the
 recent commit:
 
 deischen    2002/12/02 11:58:55 PST
 
   Modified files:
     sys/i386/i386        genassym.c locore.s machdep.c 
     sys/i386/include     signal.h ucontext.h 
   Log:
   Align the FPU state in the ucontext and sigcontext to 16 bytes
   to accomodate the new SSE/XMM floating point save/restore
   instructions.
   
   This commit is mostly from bde and includes some style nits.
   
   Approved by:    re (jhb)
 
 However, on my 2GHz Pentium4, the pow(3) is between 10 to 15%
 slower, when compiled for pentium4, than it is, when compiled
 for pentium3. The little program follows. It prints out the
 results of the explicit __ieee754_pow(), and than goes to work.
 
 #include <math.h>
 #include <stdio.h>
 
 double __ieee754_pow(double, double);
 
 int main() {
 	int i;
 	printf("%g^%g is %g\n", 2.0, 2.1, __ieee754_pow(2.0, 2.1));
 	printf("%g^%g is %g\n", 11.0, -2.1, __ieee754_pow(11.0, -2.1));
 	for (i = 0; i < 10000000; i++)
 		__ieee754_pow(11.0, -2.1);
 	return 0;
 }
 
 I compile it (named t.c) as follows:
 
 	cd /usr/src/lib/msun/src
 	cc $FLAGS t.c e_exp.c ../i387/s_scalbn.S ../i387/e_sqrt.S e_pow.c
 
 To exclude the effects of the precompiled -lm.
 
 	-mi
 

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?200212172340.gBHNe3x8088438>