Latest fix from jtc:
The fyl2xp1 instruction has such a limited range: -(1 - (sqrt(2) / 2)) <= x <= sqrt(2) - 1 it's not worth trying to use it. Also, I'm not sure fyl2xp1's extra precision will matter once the result is converted from extended real (80 bits) back to double real (64 bits). Reviewed by: jkh Submitted by: jtc
This commit is contained in:
parent
27774cbbf4
commit
e2014c1dcb
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=2139
@ -35,10 +35,21 @@
|
||||
|
||||
#include <machine/asmacros.h>
|
||||
|
||||
RCSID("$Id: s_log1p.S,v 1.1.1.1 1994/08/19 09:40:01 jkh Exp $")
|
||||
RCSID("$Id: s_log1p.S,v 1.4 1994/08/19 03:55:57 jtc Exp $")
|
||||
|
||||
/*
|
||||
* The fyl2xp1 instruction has such a limited range:
|
||||
* -(1 - (sqrt(2) / 2)) <= x <= sqrt(2) - 1
|
||||
* it's not worth trying to use it.
|
||||
*
|
||||
* Also, I'm not sure fyl2xp1's extra precision will
|
||||
* matter once the result is converted from extended
|
||||
* real (80 bits) back to double real (64 bits).
|
||||
*/
|
||||
ENTRY(log1p)
|
||||
fldln2
|
||||
fldl 4(%esp)
|
||||
fyl2xp1
|
||||
fld1
|
||||
faddp
|
||||
fyl2x
|
||||
ret
|
||||
|
Loading…
Reference in New Issue
Block a user