Age | Commit message (Collapse) | Author |
|
we have them.
Compiles on vax. okay martynas@
|
|
suggested by martynas@
okay miod@
(just rearranges the !vax makefile, no compile change there)
|
|
of assembly version are obvious.
Move cproj/cprojf to the PURE club, as the asm support code provides
copysignf
okay martynas@
|
|
same as code in generic src.
introduce PURE_SRCS for completely MI math code.
okau martynas@
|
|
on this platform), so don't pretend it does, and don't build long double libm
routines.
|
|
|
|
ok guenther@
|
|
clean make build tested on i386;
ok deraadt@, no objections from martynas@
|
|
128-bit long double. Diff committed on behalf of martynas@
|
|
|
|
|
|
to GCC4 it doesn't generate broken code anymore.
From Brad. Tested and verified by myself.
|
|
been C99 complex (not struct complex) for couple of years.
- Remove BUGS section; cabs is finally prototyped in complex.h.
- Also document cabsl.
|
|
|
|
modf(3), frexp(3), ldexp(3), fpclassify(3) pages are in libc, too.
|
|
entries and unused implementations. It is clear that this situation
won't change.
|
|
on this historical behavior; so we're stuck in this stupid situation.
No cookie for me.
|
|
extended-precision support. Mostly from Cephes.
|
|
them in libc for a very long time. OK guenther@.
|
|
|
|
|
|
is gone since 1999.
|
|
commit, and deal with problems (if any) in tree.
Note that this adds the following functions. Ports with hacks might
need adjustments.
nexttoward(3), fma(3), nexttowardf(3), fmaf(3), acoshl(3), asinhl(3),
atanhl(3), coshl(3), sinhl(3), tanhl(3), expl(3), expm1l(3), logl(3),
log10l(3), log1pl(3), log2l(3), modfl(3), cbrtl(3), hypotl(3),
powl(3), erfl(3), erfcl(3), lgammal(3), tgammal(3), ceill(3),
floorl(3), lrintl(3), llrintl(3), roundl(3), lroundl(3), llroundl(3),
truncl(3), fmodl(3), remainderl(3), remquol(3), nextafterl(3),
nexttowardl(3), fmal(3).
With this commit, our library implements all functionality required
by C99. Documentation bits will follow.
|
|
Go for it miod@.
|
|
Looked over by miod@.
|
|
|
|
|
|
|
|
- add nearbyint, nearbyintf and nearbyintl implemented using fenv
|
|
OK kettenis@ jmc@
|
|
files or directories when applicable.
The inspiration and name of MACHINE_CPU come from NetBSD, although the way to
provide it to Makefiles is completely different.
ok kettenis@
|
|
ok pirofti@
|
|
ok otto@
|
|
is defined on all architectures.
ok jmc@ (man pages) and martynas@
|
|
ok otto millert martynas
|
|
is getting ridiculous. split them into groups of copysign, ilogb,
nextafter, scalbn. discussed long ago with millert@
|
|
|
|
formats. which even for 80-bit & 128-bit long doubles is only 15
bits. therefore, scalbln, scalblnf, scalblnl are essentially the
same as scalbn, scalbnf, scalbnl with bounds checking so that
LONG_MIN..INT_MIN, and INT_MAX..LONG_MAX ranges properly raise
exceptions & yield correct values. looks good to millert@
|
|
|
|
versions; spotted by kettenis@
while here also remove unused ldexp; it lives in libc
ok kettenis@, "looks good" millert@
|
|
|
|
faster that way. tested by myself. discussed w/ & ok miod@, millert@
|
|
since its fp does not have distinguished values for qnans. tested
by naddy@; fixes libnova. ok theo
|
|
|
|
|
|
from asm.h. discussed w/ millert@
|
|
important functions: acosl, asinl, atanl, atan2l, cosl,
sinl, tanl, exp2l, frexpl, ilogbl, ldexpl, logbl, scalbnl,
fabsl, hypotl, powl, sqrtl, rintl, copysignl, nanl, fdiml,
fmaxl, fminl. mostly taken from freebsd, needed alot of
changes to adapt. note, these are all c versions; and are
quite slow when architectures have, e.g. sqrt. assembly
versions will be added afterwards
- make them .weak/__weak_alias to the double precision
versions on other archs
- no need to have two finites. finite() and finitef() are
non-standard 3BSD obsolete versions of isfinite. remove
from libm. make them weak_alias in libc to __isfinite and
__isfinitef instead. similarly make 3BSD obsolete versions
of isinf, isinff, isnan, isnanf weak_aliases to C99's
__isinf, __isinff, __isnan, __isnanf
- remove unused infinity.c. the c library has infinities
for each supported platform
- use STRICT_ASSIGN cast hack for _kernel_rem_pio2, so that
the double version has a chance of working on i386 with
extra precision
- avoid storing multiple copies of the pi/2 array, since
it won't vary
- bump major due to removed finite/finitef. although they
will be in libc, which anything is linked to, minor bump
might be enough
ok millert@. tested by sthen@, jsg@, ajacoutot@, kili@, naddy@
|
|
supports (which is all, except the float ones)
ok millert@
|
|
|
|
fminf, fmaxf, fdimf, fdiml for VAX. looks good to millert@
|