summaryrefslogtreecommitdiff
path: root/lib/libm
AgeCommit message (Collapse)Author
2013-06-05use fancy .In macro for includes. from Jan Klemkow. ok jmc schwarzeTed Unangst
2013-03-28Switch libc and libm to use strong aliases rather than weak aliasesMartynas Venckus
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@.
2013-02-02Userland bits for m68k/ELF. Mostly addition of register prefixes to theMiod Vallat
assembler instructions, and cope with the few changes in return values location.
2013-01-13Get rid of the very ugly lint workarounds: LINTLIBRARY, PROTOLIB,Martynas Venckus
and a few empty files for lint to chew on.
2013-01-05Switch m88k ports to ELF.Miod Vallat
2012-12-30Provide proper ldexp{f,l} aliases to scalbn{f,l} to match the MI (ld80) code.Miod Vallat
2012-12-05Remove excessive sys/cdefs.h inclusionTheo de Raadt
ok guenther millert kettenis
2012-09-15m88k does not have the m68k long double type actually (long double == doubleMiod Vallat
on this platform), so don't pretend it does, and don't build long double libm routines.
2012-09-04remove lint leftovers; ok guenther@Okan Demirmen
2012-08-23Aliases for extended precision were missed on a few functions on hppa.Martynas Venckus
Reported by Brad, thanks!
2012-08-19Fix ranges in the method description.Martynas Venckus
2012-08-02remove leftover NOLINT, WANTLINT, LINTFLAGS, LOBJ vars and lint targets.Okan Demirmen
ok guenther@
2012-02-26Fix several manpage titles, from Lawrence Teo.Christiano F. Haesbaert
ok dcoppa@ jmc@ schwarze@.
2012-01-14many ways to get a log2... clue newbs.Marc Espie
okay jmc@
2011-12-24formatting errors, found using freebsd's "igor";Jason McIntyre
2011-12-23some spelling fixes, found using freebsd's "igor" document verifier;Jason McIntyre
2011-09-22install infnan(3/VAX) into man3/vax/ on all archs;Ingo Schwarze
clean make build tested on i386; ok deraadt@, no objections from martynas@
2011-09-03make -column lists pretty again;Jason McIntyre
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.
2011-08-19Bring libc and libm in line with the compiler now that we no longer have aMark Kettenis
128-bit long double. Diff committed on behalf of martynas@
2011-07-26At some point we've switched to the VFP floating-point--unlike FPAMartynas Venckus
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.
2011-07-26__arm32__ -> __arm__, since our new compiler isn't defining theMartynas Venckus
former anymore. OK miod@.
2011-07-25Make huge constants actually long, so they don't overflow and becomeMartynas Venckus
infinite.
2011-07-24tweak previous;Jason McIntyre
2011-07-24Document fma, fmaf, fmal, nexttoward, nexttowardf, nexttowardl.Martynas Venckus
2011-07-21sundry tweakage;Jason McIntyre
2011-07-20- Make constants const.Martynas Venckus
- 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.
2011-07-20For intermediate computations use single or extended counterpartsMartynas Venckus
where appropriate, to avoid precision loss.
2011-07-20Document complex math library.Martynas Venckus
2011-07-19Typo.Martynas Venckus
2011-07-11Remove the GCC2 optimizer workaround for sparc. After switchingMartynas Venckus
to GCC4 it doesn't generate broken code anymore. From Brad. Tested and verified by myself.
2011-07-09- Fix the cabs, and cabsf prototypes in the manual pages; it'sMartynas Venckus
been C99 complex (not struct complex) for couple of years. - Remove BUGS section; cabs is finally prototyped in complex.h. - Also document cabsl.
2011-07-09Switch to the SSE code. OK mikeb@.Martynas Venckus
2011-07-09Make the zero condition properly raise the exception and return.Martynas Venckus
2011-07-09Don't reimplement the same thing twice. OK matthew@.Martynas Venckus
2011-07-08Move fabs(3) manual page from libm to libc, for consistency. TheMartynas Venckus
modf(3), frexp(3), ldexp(3), fpclassify(3) pages are in libc, too.
2011-07-08Remove the stupid commented out fabs(3), frexp(3), and modf(3)Martynas Venckus
entries and unused implementations. It is clear that this situation won't change.
2011-07-08Revert (leaving the complex math part alone). Some stuff is dependingMartynas Venckus
on this historical behavior; so we're stuck in this stupid situation. No cookie for me.
2011-07-08Finalize work on complex math routines, now that we have theMartynas Venckus
extended-precision support. Mostly from Cephes.
2011-07-08Move fabs(3), frexp(3), and modf(3) to libm--nothing has been usingMartynas Venckus
them in libc for a very long time. OK guenther@.
2011-07-08signbitl -> signbit.Martynas Venckus
2011-07-07Remove references to math(3).Martynas Venckus
2011-07-07Remove references to math(3).Martynas Venckus
2011-07-07Remove math(3). OK theo.Martynas Venckus
2011-07-07Document extended-precision routines.Martynas Venckus
2011-07-06Don't pull bsd.own.mk for NOPROFILE & NOPIC -- the libm_i387 thingMartynas Venckus
is gone since 1999.
2011-07-06Finalize work on the math library. It's time to do this monsterMartynas Venckus
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.
2011-07-04- Take into account padding for the IEEE extended shape types. ItMartynas Venckus
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.
2011-07-02For tiny x, tanhf = x*(one+x). GCC (at -O2) optimized this intoMartynas Venckus
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.
2011-05-31Call the single, not double-precision version of copysign for theMartynas Venckus
float arguments.
2011-05-31Make lint play nicer in pass 2 of libm on amd64 and i386. TheMartynas Venckus
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.