| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
on non-IEEE platforms. Since the VAX port was discontinued, all
our remaining architectures use IEEE floating point, as will any
future ones.
ok millert@ tb@
|
|
|
|
|
|
| |
All dependencies on libc are now via reserved/standardized names.
ok kettenis@ millert@ deraadt@
|
|
|
|
|
|
| |
in favor of isinf(), isnan(), and isfinite().
ok tb@ martynas@
|
|
|
|
|
| |
we have them.
Compiles on vax. okay martynas@
|
|
|
|
|
|
|
|
| |
suggested by martynas@
okay miod@
(just rearranges the !vax makefile, no compile change there)
|
|
|
|
| |
okay martynas@
|
|
|
|
| |
okay martynas@
|
|
|
|
|
|
| |
ceill/floorl
okay martynas@, checked for build by miod@ as well.
(note that these don't require bumps, as vax has no shared libraries...)
|
|
|
|
|
|
|
| |
appropriate constant to the mantissa size (and document what L is along
the way).
okay martynas@, tested by miod@ for results
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
|
|
|
|
|
| |
where appropriate. Among other things makes the symbols consistent
across all architectures (notably where ldbl mantissa is 53 bits).
While at it, kill unused LINTLIBRARY/PROTOLIB1 cruft which was there
to trick lint into recording the right prototypes for aliased
functions. Most of the work done at the awesome n2k13 hackathon.
Agreed by kettenis@, guenther@, matthew@.
|
|
|
|
| |
and a few empty files for lint to chew on.
|
|
|
|
| |
ok guenther millert kettenis
|
|
|
|
|
| |
on this historical behavior; so we're stuck in this stupid situation.
No cookie for me.
|
|
|
|
| |
them in libc for a very long time. OK guenther@.
|
|
|
|
|
|
|
| |
database on platforms without extended-precision floating-point
support.
Seems like a reasonable approach to millert@.
|
|
|
|
| |
ok millert@
|
|
|
|
|
|
|
| |
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
|
|
|
|
| |
accurately, hence the tricks in libm, using machine representation
of constants. remove kludges and switch to use decimal constants,
much simplifying the code. since, the compiler converts them
accurately. generated values match on vaxfp
discussed with millert@, and miod@
testing todd@, and myself
ok millert@
|
| |
|
| |
|
|
|
|
|
| |
since its fp does not have distinguished values for qnans. tested
by naddy@; fixes libnova. ok theo
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
|
|
|
|
|
| |
- remove never-enabled signbit. libc has is now
- add C99 implementations, from freebsd, for nan(), nanf() (needed
to write _digittoint for it), exp2(), exp2f(), remquo(), remquof(),
needed STRICT_ASSIGN macro for math_private.h
- bump major
man pages will follow
exp2{,f} has been requested by chl@
ok millert@
|
| |
|
|
|
|
|
|
|
|
| |
- actually raise inexacts for expm1, and support
- __exp__E always returns, because inexact check always succeeds.
add NOTREACHED
- some cases in lgamma FALLTHROUGH, as intended
ok millert@
|
| |
|
|
|
|
| |
ok millert@
|
|
|
|
|
|
|
|
|
| |
ugly, when we have isnan and isinf
- no need to check for _IEEE, when checking for not-a-number
- remove some impossible checks
- while here, drem->remainder, as drem is just an obsolete alias
now
ok millert@
|
|
|
|
|
|
|
| |
- no support for National 32000, removing ns32000/national ifdefs maze
- remove tahoe defs
- ansify
looks fine to millert@; who also noticed rint removal
|
|
|
|
|
| |
zero const. also do the same fix as was found for ieee's trunc by
lint; ok millert@. tested on VAX
|
| |
|
|
|
|
|
| |
includes, include math.h where needed and remove redundant declarations
ok millert@
|
|
|
|
|
|
| |
- TEST_FMOD doesn't belong here, remove
- remove ifdef _ANSI_SOURCE and assume it's default
ok millert@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- make gamma an alias of lgamma
- on ieee, add tgamma, based on gamma from non-ieee
- fixes for tgamma/lgamma/exp/log, esp. special cases (some from
freebsd); properly raise invalid fp operations on vax
- also some general cleanup, ansification, man page (which was ok
jmc@)
- bump minor
this makes some ports using tgamma possible; also consistifies
behavior across openbsd/ieee and openbsd/non-ieee, and other operating
systems
much thanks sthen@, johan@, steven@, Simon Kuhnle, Wiktor Izdebski
for testing
ok millert@
|
|
|
|
|
|
|
|
|
|
| |
- document and mlink drem{,f}
- drem->remainder on noieee, and make drem an alias
- finite returns integer, n_support.c
- general n_support.c ansification and cleanup
- drem is now an ALTENTRY for remainder, in n_support.S
help with man page from jmc@ and millert@
ok millert@
|
|
|
|
| |
ok millert@
|
|
|
|
| |
for completeness.
|
|
|
|
| |
rescinded 22 July 1999. Proofed by myself and Theo.
|
|
|
|
|
|
| |
Only affects vax, which has no shared libraries, so no version change
needed for libm.
Someone with enough math skills ought to code a real scalb() on a rainy day...
|
| |
|
| |
|
| |
|
|
|