summaryrefslogtreecommitdiffstats
path: root/lib/libm/noieee_src/n_support.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove the unused leftovers of the 4.4BSD libm, which was only usednaddy2018-07-181-505/+0
| | | | | | | 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@
* Reduce libm's exports and make internal calls go direct.guenther2016-09-121-9/+12
| | | | | | All dependencies on libc are now via reserved/standardized names. ok kettenis@ millert@ deraadt@
* Per fpclassify(3): isinff(), isnanf(), finite(), and finitef() are deprecatedguenther2016-09-121-2/+2
| | | | | | in favor of isinf(), isnan(), and isfinite(). ok tb@ martynas@
* bring reference C code that's not compiled in synch with asm codeespie2013-07-151-1/+7
| | | | okay martynas@
* Switch libc and libm to use strong aliases rather than weak aliasesmartynas2013-03-281-5/+5
| | | | | | | | | | | 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@.
* Get rid of the very ugly lint workarounds: LINTLIBRARY, PROTOLIB,martynas2013-01-131-27/+1
| | | | and a few empty files for lint to chew on.
* Remove excessive sys/cdefs.h inclusionderaadt2012-12-051-2/+1
| | | | ok guenther millert kettenis
* Trick lint into recording the right prototypes in the llib-lm.lnmartynas2011-05-301-9/+27
| | | | | | | database on platforms without extended-precision floating-point support. Seems like a reasonable approach to millert@.
* rcsid[] and sccsid[] and copyright[] are essentially unmaintained (andderaadt2009-10-271-5/+1
| | | | | | | 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
* use sys/cdefs.h; pointed out by theomartynas2008-12-101-2/+2
|
* - 80-bit and quad precision trigonometric and other mostmartynas2008-12-091-14/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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@
* - remove isinff, isnanf. this has been moved to libcmartynas2008-07-241-25/+1
| | | | | | | | | | | - 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@
* fix cases, found by lint:martynas2008-07-181-2/+4
| | | | | | | | - 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@
* properly raise inexact; ok millert@martynas2008-07-171-2/+2
|
* some archaic 'n = a(b), c(d)' use that confused lintmartynas2008-07-161-3/+11
| | | | ok millert@
* - expressions such as x != x and x == x are prone to errors andmartynas2008-06-251-6/+7
| | | | | | | | | 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@
* cleaning up, no functional changesmartynas2008-06-211-71/+35
| | | | | | | - no support for National 32000, removing ns32000/national ifdefs maze - remove tahoe defs - ansify looks fine to millert@; who also noticed rint removal
* fix some errors found by lint, e.g. declaration w/o types, makemartynas2008-06-161-5/+5
| | | | | zero const. also do the same fix as was found for ieee's trunc by lint; ok millert@. tested on VAX
* spacing, add rcs ids, no binary changemartynas2008-06-121-1/+2
|
* some cleanup for noieee_src, as asked by millert@: remove fictionalmartynas2008-06-121-0/+1
| | | | | includes, include math.h where needed and remove redundant declarations ok millert@
* drem{,f} are aliases for remainder{,f}, so:martynas2008-06-111-79/+86
| | | | | | | | | | - 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@
* add __signbit/__signbitf/__signbitl; nothing uses this file, it's justjason2007-05-311-0/+24
| | | | for completeness.
* Remove the advertising clause in the UCB license which Berkeleymillert2003-06-021-5/+1
| | | | rescinded 22 July 1999. Proofed by myself and Theo.
* scalb() in vax libm is in fact scalbn(), so change the symbol name.miod2002-10-111-8/+8
| | | | | | 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...
* ^vax^__vax__hugh2000-10-101-34/+34
|
* initial import of NetBSD treederaadt1995-10-181-0/+525