Commit Graph

304 Commits

Author SHA1 Message Date
drochner
458288a626 pull in an accuracy fix for corner cases from FDLIBM 5.3
(affects large arguments which are close to N*Pi+Pi/2):
    2. k_tan.c error was > 1 ulp target for FDLIBM
        5.2: Worst error at least 1.45 ulp at
        tan(1.7765241907548024E+269) = 1.7733884462610958E+16
        5.3: Worst error 0.96 ulp
2004-07-22 18:24:09 +00:00
drochner
c351eda960 amd64: stack sanity, leave the return PC alone 2004-07-16 18:40:24 +00:00
junyoung
ffb3101064 round(3) and roundf(3) appeared in 2.0.
Bump date.
2004-07-15 12:12:39 +00:00
wiz
f46be40b71 Move RCS Id to top of file; comment out reference to trunc(3),
which we do not have.
2004-07-10 14:11:18 +00:00
junyoung
bc836a3102 lib/24252: Add C99 functions round(3) and roundf(3).
libm minor unchanged; ride a recent bump.

From FreeBSD.
2004-07-10 13:49:09 +00:00
drochner
3e7f9e1481 allocate stack space for temporary storage 2004-07-02 10:17:23 +00:00
drochner
07be12b505 also provide an alpha assembler implemtation of lrint() 2004-07-01 19:08:21 +00:00
drochner
5d151d763f enable lrint.S for amd64 (which doesn't build libm387),
and tighten the generic->machdep source distribution a bit to avoid
unwanted substitutions
2004-07-01 17:33:16 +00:00
drochner
af7cf00a5a provide an assembler implementation of lrint() for i386 and amd64 2004-07-01 17:30:48 +00:00
drochner
9768ef916d bump libm minor version (functions added) 2004-07-01 16:14:18 +00:00
drochner
147d852dbc being here, add the (l)lround(f) functions to libm
(almost the same like lrint)
2004-07-01 16:09:21 +00:00
drochner
54e35f616a aboid to shift an int by more than 31 bits - behaviour is implementation
dependant in this case
2004-07-01 16:06:30 +00:00
drochner
d45473e8a3 fic the <close-to-1>^<huge number> fix as in e_pow.c 2004-06-30 18:45:25 +00:00
drochner
a6d8e4cf79 -fix a long-standing bug which affects the <close-to-1>^<huge number> case
(fixed in fdlibm-5.3)
-being here, sync with -5.3 as far as possible (There is another bugfix -
 sign in overflow/underflow cases -; this doesn't change anything for us
 because the wrapper (w_pow.c) fixes this up. Keep things in sync anyway
 to ease further maintainance.)
2004-06-30 18:43:15 +00:00
drochner
d76992e490 Implement (l)lrint(f).
(Could get some optimization for LP64; this would need a change to
the float access macros in math_private.h.)
2004-06-30 15:08:30 +00:00
drochner
dddd0e25a3 ANSIfy 2004-06-25 15:57:38 +00:00
mhitch
a6d522d13c Add ceilf(), floorf(), and sqrtf() (as wrappers using ceil(), floor(), and
sqrt() repectively).  The fixes PR#22796.
2004-05-13 20:35:40 +00:00
wiz
848e689872 Typo fix, from skrueger at europe com. 2004-03-22 13:41:09 +00:00
jschauma
355765bffd Add a list of pre-defined values (such as pi, e etc.).
Ok by wiz@.
2003-12-03 23:31:21 +00:00
wiz
fff16e7f65 Uppercase name; from Jared Yanovich via jmc@openbsd. 2003-11-02 11:17:16 +00:00
lukem
f85d2d1c14 Use ${HOST_SH} instead of `sh'.
If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
2003-10-26 07:25:33 +00:00
wennmach
be03f9bd59 Avoid the PIC dance. 2003-09-16 18:17:11 +00:00
fvdl
8eb02ce5c0 Make log1p and log1pf work in shared libraries again. 2003-09-14 21:26:14 +00:00
wennmach
cf92bf760d Reimplement s_log1p.S and s_log1pf.S to use the fyl2xp1 instruction
where necessary.

The log1p() function is provided to compute an accurate value of
log(1 + x), even for tiny values of x. The i387 FPU provides the
fyl2xp1 instruction for this purpose.

However, since the range of the fyl2xp1 function is limited to
-(1 - (sqrt(2) / 2)) <= x <= sqrt(2) - 1
          (-0.292893 <= x <= 0.414214)
we need to check if the argument is in the valid range.

In order to reduce the cost for testing the range, we only use
fyl2xp1 if the argument is in the range
               -0.25 <= x <= 0.25
which can be checked with just one conditional branch.

Fixes PR lib/22599 by Ray Brownrigg.
2003-09-10 16:45:43 +00:00
agc
eb7c1594f1 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22280, verified by myself.
2003-08-07 16:42:00 +00:00
salo
99410184e7 netbsd.org->NetBSD.org 2003-07-26 19:24:24 +00:00
wiz
fc7bf2b10c Nit fixes from jmc@openbsd. 2003-05-20 10:15:16 +00:00
wiz
f0679cbc4d Restore \fR that got lost in last. 2003-05-01 09:36:49 +00:00
gmcgarry
f72c56c419 Remove reference to non-existent infnan(3) function. 2003-05-01 08:01:52 +00:00
wiz
472351e13d Use
.In header.h
instead of
.Fd #include \*[Lt]header.h\*[Gt]
Much easier to read and write, and supported by groff for ages.
Okayed by ross.
2003-04-16 13:34:34 +00:00
perry
ca9aafe282 bessel->Bessel, from Igor Sobrado in PR misc/19814 2003-03-31 18:47:42 +00:00
perry
896b16517d bessel->Bessel from Igor Sobrado PR misc/19814 2003-03-31 18:46:38 +00:00
matt
88dc468feb Fix some assembly botches. 2003-02-21 06:40:47 +00:00
wiz
617b132aac Spell output with two ts. 2003-01-04 23:43:02 +00:00
scw
69cddf09e6 Avoid a strict-alias warning. 2002-12-05 16:03:42 +00:00
wiz
71dd1ccd73 New sentence, new line. From Robert Elz. 2002-10-01 19:21:30 +00:00
lukem
ec5dbc56b8 Explicitly move setting of NOxxx and USE_SHLIBDIR to the top of the
Makefile (before including <bsd.own.mk>)
2002-08-19 14:55:14 +00:00
lukem
ebb6fc9eb8 Use ${NETBSDSRCDIR}/some/path instead of ${.CURDIR}/../../some/path (etc).
(Reduces make output by ~ 20%)
2002-08-19 09:41:27 +00:00
matt
778e246527 Add sinf/cosf. 2002-07-14 19:55:24 +00:00
matt
5ac19a376b Add finitef 2002-06-23 21:55:12 +00:00
matt
7a0238324a Add cosf/sinf. 2002-06-23 21:54:37 +00:00
wiz
a81e53dde5 Remove unnecessary spaces. 2002-06-15 09:39:52 +00:00
matt
0202d560cf Compile libm on VAX at WARNS=2; leave other architectures at WARNS=1 2002-06-15 00:13:07 +00:00
matt
f1009ecdff Ansify libm noieeesrc (for VAX). Also make const data really const.
libm for VAX can compiles with WARNS=2
2002-06-15 00:10:17 +00:00
wiz
aa30599e06 __STDC__ is always defined on NetBSD. 2002-05-26 22:01:47 +00:00
thorpej
7c1988dc5f #if 0 one; it's not used. 2002-04-09 01:55:48 +00:00
thorpej
b07be1ff9d #if 0 invsqrtpi; it's not used. 2002-04-09 01:55:13 +00:00
fvdl
059c5712b9 Fix mistake in previous. 2002-03-30 10:03:44 +00:00
fvdl
edcf4b63ed Fix stack usage for temporary storage. From Stephen Ma in PR xsrc/15404. 2002-03-26 15:17:37 +00:00
christos
47c5991d7a PR/15748: Ray Brownrigg: exp(log(0)) is broken.
Use FreeBSD's version. Handles inf/nan and rounding modes.
2002-02-27 16:32:46 +00:00