summaryrefslogtreecommitdiffstats
path: root/lib/libm
AgeCommit message (Collapse)AuthorFilesLines
2020-11-14remove macro instances from arbitrary string width specifiers. for examplejmc2-6/+6
-width ".Dv BOB" -> -width "BOB" although they are not errors, they are misleading and probably should not get pasted around
2020-11-07Fix ilogb(3) implementation. The results have to match FP_ILOGB0 andkettenis5-89/+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-11-07Fix ilogb(3) implementation. The results have to match FP_ILOGB0 andkettenis5-85/+110
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-10-31Align with C99 (and our implementation) and describe the return values forkettenis1-4/+7
NaN and 0 arguments using FP_ILOGB0 and FP_ILOGBNAN.
2020-07-09The fegetexceptflag() function should not have a DEF_STD.kettenis1-2/+1
Brings arm64 in line with all the other architectures. ok millert@
2020-06-28Add powerpc64 support.kettenis1-1/+3
2020-06-28Add powerpc64 fenv bits; copied from powerpc. From drahn@kettenis1-0/+339
2020-02-08correct Research Unix edition "appeared in" use in HISTORYjsg2-6/+6
Starting from "Combined Table of Contents" in Doug McIlroy's "A Research UNIX Reader" a table of which edition manuals appeared in. Checked against manuals from bitsavers/TUHS and source from TUHS where available. Ingo points out there are cases where something is included but not documented until a later release. bcd(6) v6 v7 printf(3) v2 v4 abort(3) v5 v6 system(3) v6 v7 fmod(3) v5 v6 ok schwarze@
2019-10-30Fix declaration of S1 by swapping misplaced ',' and ';'.tb1-2/+2
This is inside !(defined(__amd64__) || defined(__i386__)), while the file is only used on those two architectures. "Free commit! No strings attached! No hidden tricks!" from miod
2019-09-06More Version 1 AT&T UNIX history.schwarze1-2/+7
This became possible because copies of the original v1 manuals have shown up on the Internet some time ago. Reminded by Sevan Janiyan <venture37 at geeklan dot co dot uk>.
2019-04-01repair confusing "} if" indentation as suggested by deraadt@naddy2-2/+4
2019-03-15Remove FBSDID.kevlo2-8/+2
ok deraadt@
2019-03-12Setting and getting the rounding mode on our arm64 FPU has not workedpatrick1-9/+14
in libm since the rounding mode is in fpcr, not fpsr. Since both FPU registers are 32-bit we can store them in the 64-bit fenv_t to make handling the bits easier. While there add FE_DENORMAL, which also exists on x86. Also make sure that whenever we are being passed an exception mask, we only allow the bits that are supported by hardware. Found by regression tests Debugged with Moritz Buhl ok kettenis@
2019-01-25I am retiring my old email address; replace it with my OpenBSD one.millert3-9/+9
2018-07-18Remove the unused leftovers of the 4.4BSD libm, which was only usednaddy34-6185/+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-07-08Add missing retguard checkmortimer1-1/+2
ok deraadt
2018-07-03Add retguard macros to libm assembly.mortimer43-43/+135
ok deraadt
2018-03-16improve markup quality in the cases found by the new "--" style messageschwarze1-5/+5
2018-03-16Since most (if not all) ARMv8 hardware doesn't actually support trapping ofkettenis1-20/+4
floating-point exceptions, simplify the functions that control the exception masks just like we did on armv7. ok tom@
2018-03-12Gah, rintl() is used internally, so add a macro for the fourth possiblity,guenther2-2/+7
a cloning a non-standard, long double function which _is_ used from the matching plain double function build failured pointed out by deraadt@
2018-03-12Make the binding of rintl, significand, and significandf consistentlyguenther5-5/+9
'weak' in the static libm.a ok deraadt@
2018-03-12Add cvs tag, copyright, and licenseguenther3-0/+49
2018-03-12Fix build of sincosl on machines where long double == doubleguenther3-4/+8
ok deraadt@
2018-03-10Implement sicos(3), sincosf(3) and sincosl(3). These functions are commonkettenis12-6/+629
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 onkettenis2-40/+82
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@
2018-02-05Constants which can go into .rodataderaadt2-2/+4
2017-09-27Xr; from jan staryjmc1-2/+3
2017-08-26For exceptional cases of mathematical formulae that can't reasonablyschwarze2-18/+23
be represented otherwise, use eqn(7). Idea originally from bentley@, feedback and OK bentley@, OK tb@, and no objection from jmc@.
2017-08-19Use 0xcc trapsleds instead of default/nop/0xcc in BTC alignmentsderaadt3-13/+9
don't bother with .text before ENTRY()
2017-01-21Nuke whitespace foolish enough to expose itself during the greatkrw14-28/+28
"warning:" rectification.
2017-01-20Implement gcc suggestion of extra parentheses. No functional change.krw1-2/+2
ok guenther@
2017-01-11Add support for AArch64. Based on FreeBSD's msun header, modifiedpatrick2-2/+289
to look and feel like our code.
2016-12-22copysign and copysignf are used within libm, so declare them accordingly.naddy4-10/+14
Required if the compiler doesn't replace them with builtins (e.g. clang on amd64). ok kettenis@ guenther@ i386 sync requested by guenther@
2016-09-12Reduce libm's exports and make internal calls go direct.guenther293-563/+1511
All dependencies on libc are now via reserved/standardized names. ok kettenis@ millert@ deraadt@
2016-09-12Per fpclassify(3): isinff(), isnanf(), finite(), and finitef() are deprecatedguenther25-81/+81
in favor of isinf(), isnan(), and isfinite(). ok tb@ martynas@
2016-09-12Use fe*() routines from <fenv.h> instead of fp*() routines from <ieeefp.h>guenther1-10/+11
ok tb@ martynas@
2016-09-01remove references to sparctedu1-3/+1
2016-09-01retire the sparc library codetedu1-336/+0
2016-06-01Use \(mi instead of - for the mathematical minus sign as recommended bytb1-7/+7
mandoc_char(7). While there, use some spacing around the arithmetic operations to make the more complicated formulas a bit easier to read. looks good to kettenis, no objection from schwarze
2016-05-12more hppa64 cleaningderaadt1-370/+0
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-04-27minor cleanup;jmc2-6/+6
2016-04-26Remove predefined strings from libm pages.tb21-128/+103
With lots of help, input and tweaks and finally ok schwarze@
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-12Fix markup problem introduced in the previous commit. Solution andtb1-6/+5
explanations provided by schwarze@.
2016-03-10Remove VAX-specific bits of libm manpages.tb6-304/+17
ok jmc@
2016-03-10no need for SUBDIR now that vax is gone; ok deraadtjmc1-3/+1
2016-03-10remove Xr to infnan, a trickily hidden (from me anyway) vax page;jmc5-20/+14
2016-03-10more pieces of vaxderaadt9-1846/+0