summaryrefslogtreecommitdiffstats
path: root/lib/libm/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2020-11-07Fix ilogb(3) implementation. The results have to match FP_ILOGB0 andkettenis1-3/+3
FP_ILOGBNAN which isn't the case for the amd64 and i386 assembly versions. Drop these in favour of C implementations. Als reimplement ilogbl(3) by providing separate ld80 and ld128 implementations that replace the existing implementation which may hit an infinite loop when built for quad-precision long double. ok patrick@, gkoehler@
2020-06-28Add powerpc64 support.kettenis1-1/+3
2018-07-18Remove the unused leftovers of the 4.4BSD libm, which was only usednaddy1-2/+1
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@
2018-03-10Implement sicos(3), sincosf(3) and sincosl(3). These functions are commonkettenis1-5/+5
extensions and modern compilers (such as clang) will use them to optimize separate calculations of sine and cosine. ok tom@, patrick@, deraadt@, jmc@
2018-02-28Remove CFLAGS+=-mfloat-abi=softfp that I accidentally committed.kettenis1-3/+1
2018-02-28Change floating-point mode/environment control functions to operate onkettenis1-1/+3
both the hardfloat (FPU registers) and softfloat (software) state. This makes these functions work correctly when mixing hardfloat and softfloat code. Disable trapping for softfloat since most (if not all) ARMv7 and ARMv8 hardware that is on the market doesn't support trapping of floating-point exceptions. ok patrick@
2017-01-11Add support for AArch64. Based on FreeBSD's msun header, modifiedpatrick1-2/+5
to look and feel like our code.
2016-09-12Reduce libm's exports and make internal calls go direct.guenther1-1/+8
All dependencies on libc are now via reserved/standardized names. ok kettenis@ millert@ deraadt@
2016-09-01remove references to sparctedu1-3/+1
2016-05-11remove hppa64 port, which we never got going beyond broken single users.deraadt1-3/+1
hppa reverse-stack gives us a valuable test case, but most developers don't have a 2nd one to proceed further with this. ok kettenis
2016-03-30for some time now mandoc has not required MLINKS to functionjmc1-202/+1
correctly - logically complete that now by removing MLINKS from base; authors need only to ensure there is an entry in NAME for any function/ util being added. MLINKS will still work, and remain for perl to ease upgrades; ok nicm (curses) bcook (ssl) ok schwarze, who provided a lot of feedback and assistance ok tb natano jung
2016-03-10no need for SUBDIR now that vax is gone; ok deraadtjmc1-3/+1
2016-03-09We are done providing support for the vax.deraadt1-28/+1
lots of agreement.
2015-09-18Move s_signgam.c to PURE_SRCS, so that it also gets built on vax.miod1-3/+3
2014-09-12Provide a sparc64 version of sqrtl(3) that simply calls _Qp_sqrt.kettenis1-1/+2
The generic sqrtl(3) is not nearly accurate enough for quad-precision floating point.
2014-03-18Retire hp300, mvme68k and mvme88k ports. These ports have no users, keepingmiod1-15/+2
this hardware alive is becoming increasingly difficult, and I should heed the message sent by the three disks which have died on me over the last few days. Noone sane will mourn these ports anyway. So long, and thanks for the fish.
2013-08-07simple inaccurate implementation of lrint* functions on vax, just soespie1-2/+2
we have them. Compiles on vax. okay martynas@
2013-07-15use some generic code on vax, to do round/roundf/scalbln...espie1-5/+5
suggested by martynas@ okay miod@ (just rearranges the !vax makefile, no compile change there)
2013-07-03reorganize NOIEEE_SRCS so that files not compiled on vax becauseespie1-10/+12
of assembly version are obvious. Move cproj/cprojf to the PURE club, as the asm support code provides copysignf okay martynas@
2013-07-03with DBL vs LDBL fixed, tedu some source in noieee which is actually theespie1-21/+25
same as code in generic src. introduce PURE_SRCS for completely MI math code. okau martynas@
2012-09-15m88k does not have the m68k long double type actually (long double == doublemiod1-2/+2
on this platform), so don't pretend it does, and don't build long double libm routines.
2012-09-04remove lint leftovers; ok guenther@okan1-3/+1
2012-08-02remove leftover NOLINT, WANTLINT, LINTFLAGS, LOBJ vars and lint targets.okan1-2/+1
ok guenther@
2011-09-22install infnan(3/VAX) into man3/vax/ on all archs;schwarze1-2/+4
clean make build tested on i386; ok deraadt@, no objections from martynas@
2011-08-19Bring libc and libm in line with the compiler now that we no longer have akettenis1-3/+2
128-bit long double. Diff committed on behalf of martynas@
2011-07-24Document fma, fmaf, fmal, nexttoward, nexttowardf, nexttowardl.martynas1-2/+7
2011-07-20Document complex math library.martynas1-5/+52
2011-07-11Remove the GCC2 optimizer workaround for sparc. After switchingmartynas1-5/+1
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'smartynas1-1/+2
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-09Don't reimplement the same thing twice. OK matthew@.martynas1-4/+4
2011-07-08Move fabs(3) manual page from libm to libc, for consistency. Themartynas1-4/+2
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)martynas1-4/+1
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 dependingmartynas1-35/+25
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 themartynas1-11/+15
extended-precision support. Mostly from Cephes.
2011-07-08Move fabs(3), frexp(3), and modf(3) to libm--nothing has been usingmartynas1-25/+35
them in libc for a very long time. OK guenther@.
2011-07-07Remove math(3). OK theo.martynas1-3/+2
2011-07-07Document extended-precision routines.martynas1-1/+33
2011-07-06Don't pull bsd.own.mk for NOPROFILE & NOPIC -- the libm_i387 thingmartynas1-20/+1
is gone since 1999.
2011-07-06Finalize work on the math library. It's time to do this monstermartynas1-11/+16
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-05-28Adapt m68k MD functions to extended-precision.martynas1-9/+11
Go for it miod@.
2011-05-28Adapt m68k MD functions to single-precision.martynas1-5/+9
Looked over by miod@.
2011-05-25Document nearbyint, nearbyintf, nearbyintl.martynas1-1/+4
2011-05-25Document C99 floating-point environment.martynas1-20/+37
2011-04-28fix build ok martynas@todd1-1/+5
2011-04-28- enable fenvmartynas1-2/+15
- add nearbyint, nearbyintf and nearbyintl implemented using fenv
2010-07-19Add barebones manual pages for cimag(3), conj(3) and cproj(3)millert1-2/+5
OK kettenis@ jmc@
2010-02-03Use MACHINE_CPU instead of MACHINE_ARCH to pick the correct machine dependentmiod1-2/+2
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@
2009-11-06Provide assembly version of sqrtl(3).kettenis1-1/+2
ok pirofti@
2009-11-05Provide assembly version of sqrtl(3).kettenis1-1/+2
ok otto@
2009-10-26Add man pages for the fdim/fmin/fmax family of functions and make sure fdimlkettenis1-2/+9
is defined on all architectures. ok jmc@ (man pages) and martynas@