summaryrefslogtreecommitdiffstats
path: root/lib/libm (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix ranges in the method description.martynas2012-08-191-5/+5
|
* remove leftover NOLINT, WANTLINT, LINTFLAGS, LOBJ vars and lint targets.okan2012-08-021-2/+1
| | | | ok guenther@
* Fix several manpage titles, from Lawrence Teo.haesbaert2012-02-261-3/+3
| | | | ok dcoppa@ jmc@ schwarze@.
* many ways to get a log2... clue newbs.espie2012-01-142-4/+6
| | | | okay jmc@
* formatting errors, found using freebsd's "igor";jmc2011-12-241-3/+3
|
* some spelling fixes, found using freebsd's "igor" document verifier;jmc2011-12-231-3/+3
|
* install infnan(3/VAX) into man3/vax/ on all archs;schwarze2011-09-223-5/+14
| | | | | clean make build tested on i386; ok deraadt@, no objections from martynas@
* make -column lists pretty again;jmc2011-09-031-17/+9
| | | | | | | | | | specifically, rewrite them to permit some markup in the column headers, and use "Ta" instead of literal tabs; mandoc does not currently match groff 100%, but a mandoc fix may be some time off, and we've gone enough releases with poorly formatting column lists. in some cases i have rewritten the lists as -tag, where -column made little sense.
* Bring libc and libm in line with the compiler now that we no longer have akettenis2011-08-191-3/+2
| | | | 128-bit long double. Diff committed on behalf of martynas@
* At some point we've switched to the VFP floating-point--unlike FPAmartynas2011-07-261-3/+3
| | | | | | | | | it actually stores floats in natural-endian--therefore the existing checks became wrong. Take into account __VFP_FP__, effectively bringing back the old behavior. This way it will work now, and in the future when some of our platforms are switched to FPA, where it's much faster.
* __arm32__ -> __arm__, since our new compiler isn't defining themartynas2011-07-261-4/+4
| | | | former anymore. OK miod@.
* Make huge constants actually long, so they don't overflow and becomemartynas2011-07-252-26/+26
| | | | infinite.
* tweak previous;jmc2011-07-242-5/+5
|
* Document fma, fmaf, fmal, nexttoward, nexttowardf, nexttowardl.martynas2011-07-243-17/+80
|
* sundry tweakage;jmc2011-07-214-15/+14
|
* - Make constants const.martynas2011-07-2014-50/+50
| | | | | | - Fix aliasing issue in s_frexpf.c; spotted by gcc. Many other ones were fixed in NetBSD long ago, but this one was forgotten. It looks like recently they fixed it too.
* For intermediate computations use single or extended counterpartsmartynas2011-07-2016-50/+49
| | | | where appropriate, to avoid precision loss.
* Document complex math library.martynas2011-07-2022-31/+1300
|
* Typo.martynas2011-07-191-1/+1
|
* Remove the GCC2 optimizer workaround for sparc. After switchingmartynas2011-07-111-5/+1
| | | | | to GCC4 it doesn't generate broken code anymore. From Brad. Tested and verified by myself.
* - Fix the cabs, and cabsf prototypes in the manual pages; it'smartynas2011-07-092-34/+22
| | | | | | been C99 complex (not struct complex) for couple of years. - Remove BUGS section; cabs is finally prototyped in complex.h. - Also document cabsl.
* Switch to the SSE code. OK mikeb@.martynas2011-07-092-44/+5
|
* Make the zero condition properly raise the exception and return.martynas2011-07-091-1/+2
|
* Don't reimplement the same thing twice. OK matthew@.martynas2011-07-095-116/+5
|
* Move fabs(3) manual page from libm to libc, for consistency. Themartynas2011-07-082-82/+2
| | | | modf(3), frexp(3), ldexp(3), fpclassify(3) pages are in libc, too.
* Remove the stupid commented out fabs(3), frexp(3), and modf(3)martynas2011-07-084-191/+1
| | | | | entries and unused implementations. It is clear that this situation won't change.
* Revert (leaving the complex math part alone). Some stuff is dependingmartynas2011-07-0827-1454/+26
| | | | | on this historical behavior; so we're stuck in this stupid situation. No cookie for me.
* Finalize work on complex math routines, now that we have themartynas2011-07-0845-34/+1820
| | | | extended-precision support. Mostly from Cephes.
* Move fabs(3), frexp(3), and modf(3) to libm--nothing has been usingmartynas2011-07-0827-27/+1455
| | | | them in libc for a very long time. OK guenther@.
* signbitl -> signbit.martynas2011-07-082-4/+4
|
* Remove references to math(3).martynas2011-07-0738-113/+69
|
* Remove math(3). OK theo.martynas2011-07-072-731/+2
|
* Document extended-precision routines.martynas2011-07-0722-117/+341
|
* Don't pull bsd.own.mk for NOPROFILE & NOPIC -- the libm_i387 thingmartynas2011-07-061-20/+1
| | | | is gone since 1999.
* Finalize work on the math library. It's time to do this monstermartynas2011-07-0699-57/+11084
| | | | | | | | | | | | | | | | | | 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.
* - Take into account padding for the IEEE extended shape types. Itmartynas2011-07-041-37/+183
| | | | | | | | should be 96-bits on 32-bit architectures, and 128-bits on 64-bit architectures. - Add abstract macros to operate on long doubles by words. To be used soon.
* For tiny x, tanhf = x*(one+x). GCC (at -O2) optimized this intomartynas2011-07-021-0/+2
| | | | | x+x*x, as a result sign got lost for the zero inputs. Explicitly return in this case, similarly like has been done in tanh.
* Call the single, not double-precision version of copysign for themartynas2011-05-311-2/+2
| | | | float arguments.
* Make lint play nicer in pass 2 of libm on amd64 and i386. Themartynas2011-05-312-2/+10
| | | | | | internal _ItL_* extended-precision constants are of course going to be declared inconsistently since we define them based on structures; however prototype as long doubles.
* For tiny x, tanh = x*(one+x). GCC (at -O2) optimized this intomartynas2011-05-301-2/+4
| | | | | x+x*x, as a result sign got lost for the input of -0. Explicitly return negative zero in this case. Found by Cephes.
* Trick lint into recording the right prototypes in the llib-lm.lnmartynas2011-05-3031-122/+301
| | | | | | | database on platforms without extended-precision floating-point support. Seems like a reasonable approach to millert@.
* Store -1 into signgam in case of a special value of -0.martynas2011-05-282-2/+10
|
* Adapt m68k MD functions to extended-precision.martynas2011-05-2812-9/+513
| | | | Go for it miod@.
* Adapt m68k MD functions to single-precision.martynas2011-05-2825-5/+1005
| | | | Looked over by miod@.
* tweak previous; ok martynasjmc2011-05-265-30/+28
|
* Document nearbyint, nearbyintf, nearbyintl.martynas2011-05-252-13/+30
|
* Document C99 floating-point environment.martynas2011-05-255-20/+502
|
* Trick GCC (-O2) into actually raising the underflow exception on m88k.martynas2011-04-291-3/+3
| | | | | | | | | | Since the second division operand is a power of two, non-zero, non-nan, this got optimized (-O2) into multiplication. As a result the underflow exception wasn't being raised properly. Make the second operand a volatile to prevent incorrect optimizations. OK miod@.
* ixnay on the nopfaymiod2011-04-281-3/+1
|
* fix build ok martynas@todd2011-04-281-1/+5
|