summaryrefslogtreecommitdiffstats
path: root/lib/libm (follow)
Commit message (Collapse)AuthorAgeFilesLines
* remove macro instances from arbitrary string width specifiers. for examplejmc2020-11-142-6/+6
| | | | | | | -width ".Dv BOB" -> -width "BOB" although they are not errors, they are misleading and probably should not get pasted around
* Fix ilogb(3) implementation. The results have to match FP_ILOGB0 andkettenis2020-11-075-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@
* Fix ilogb(3) implementation. The results have to match FP_ILOGB0 andkettenis2020-11-075-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@
* Align with C99 (and our implementation) and describe the return values forkettenis2020-10-311-4/+7
| | | | NaN and 0 arguments using FP_ILOGB0 and FP_ILOGBNAN.
* The fegetexceptflag() function should not have a DEF_STD.kettenis2020-07-091-2/+1
| | | | | | Brings arm64 in line with all the other architectures. ok millert@
* Add powerpc64 support.kettenis2020-06-281-1/+3
|
* Add powerpc64 fenv bits; copied from powerpc. From drahn@kettenis2020-06-281-0/+339
|
* correct Research Unix edition "appeared in" use in HISTORYjsg2020-02-082-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@
* Fix declaration of S1 by swapping misplaced ',' and ';'.tb2019-10-301-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
* More Version 1 AT&T UNIX history.schwarze2019-09-061-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>.
* repair confusing "} if" indentation as suggested by deraadt@naddy2019-04-012-2/+4
|
* Remove FBSDID.kevlo2019-03-152-8/+2
| | | | ok deraadt@
* Setting and getting the rounding mode on our arm64 FPU has not workedpatrick2019-03-121-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@
* I am retiring my old email address; replace it with my OpenBSD one.millert2019-01-253-9/+9
|
* Remove the unused leftovers of the 4.4BSD libm, which was only usednaddy2018-07-1834-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@
* Add missing retguard checkmortimer2018-07-081-1/+2
| | | | ok deraadt
* Add retguard macros to libm assembly.mortimer2018-07-0343-43/+135
| | | | ok deraadt
* improve markup quality in the cases found by the new "--" style messageschwarze2018-03-161-5/+5
|
* Since most (if not all) ARMv8 hardware doesn't actually support trapping ofkettenis2018-03-161-20/+4
| | | | | | | floating-point exceptions, simplify the functions that control the exception masks just like we did on armv7. ok tom@
* Gah, rintl() is used internally, so add a macro for the fourth possiblity,guenther2018-03-122-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@
* Make the binding of rintl, significand, and significandf consistentlyguenther2018-03-125-5/+9
| | | | | | 'weak' in the static libm.a ok deraadt@
* Add cvs tag, copyright, and licenseguenther2018-03-123-0/+49
|
* Fix build of sincosl on machines where long double == doubleguenther2018-03-123-4/+8
| | | | ok deraadt@
* Implement sicos(3), sincosf(3) and sincosl(3). These functions are commonkettenis2018-03-1012-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@
* Remove CFLAGS+=-mfloat-abi=softfp that I accidentally committed.kettenis2018-02-281-3/+1
|
* Change floating-point mode/environment control functions to operate onkettenis2018-02-282-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@
* Constants which can go into .rodataderaadt2018-02-052-2/+4
|
* Xr; from jan staryjmc2017-09-271-2/+3
|
* For exceptional cases of mathematical formulae that can't reasonablyschwarze2017-08-262-18/+23
| | | | | | be represented otherwise, use eqn(7). Idea originally from bentley@, feedback and OK bentley@, OK tb@, and no objection from jmc@.
* Use 0xcc trapsleds instead of default/nop/0xcc in BTC alignmentsderaadt2017-08-193-13/+9
| | | | don't bother with .text before ENTRY()
* Nuke whitespace foolish enough to expose itself during the greatkrw2017-01-2114-28/+28
| | | | "warning:" rectification.
* Implement gcc suggestion of extra parentheses. No functional change.krw2017-01-201-2/+2
| | | | ok guenther@
* Add support for AArch64. Based on FreeBSD's msun header, modifiedpatrick2017-01-112-2/+289
| | | | to look and feel like our code.
* copysign and copysignf are used within libm, so declare them accordingly.naddy2016-12-224-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@
* Reduce libm's exports and make internal calls go direct.guenther2016-09-12293-563/+1511
| | | | | | 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-1225-81/+81
| | | | | | in favor of isinf(), isnan(), and isfinite(). ok tb@ martynas@
* Use fe*() routines from <fenv.h> instead of fp*() routines from <ieeefp.h>guenther2016-09-121-10/+11
| | | | ok tb@ martynas@
* remove references to sparctedu2016-09-011-3/+1
|
* retire the sparc library codetedu2016-09-011-336/+0
|
* Use \(mi instead of - for the mathematical minus sign as recommended bytb2016-06-011-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
* more hppa64 cleaningderaadt2016-05-121-370/+0
|
* remove hppa64 port, which we never got going beyond broken single users.deraadt2016-05-111-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
* minor cleanup;jmc2016-04-272-6/+6
|
* Remove predefined strings from libm pages.tb2016-04-2621-128/+103
| | | | With lots of help, input and tweaks and finally ok schwarze@
* for some time now mandoc has not required MLINKS to functionjmc2016-03-301-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
* Fix markup problem introduced in the previous commit. Solution andtb2016-03-121-6/+5
| | | | explanations provided by schwarze@.
* Remove VAX-specific bits of libm manpages.tb2016-03-106-304/+17
| | | | ok jmc@
* no need for SUBDIR now that vax is gone; ok deraadtjmc2016-03-101-3/+1
|
* remove Xr to infnan, a trickily hidden (from me anyway) vax page;jmc2016-03-105-20/+14
|
* more pieces of vaxderaadt2016-03-109-1846/+0
|