Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-03-04 | Bring back the fabsf strong alias to fabs, lost sometime ago during | Miod Vallat | |
libm symbol visibility rework. This would warrant a libm.so minor bump, but as 7.5 packages build have started, this won't happen (and hopefully noone will notice since this only affects landisk). ok deraadt@ | |||
2023-01-27 | Use the same inline assembly constraints as for libc fp*(), when operating | Miod Vallat | |
on the floating-point control register. | |||
2023-01-27 | Remove fast round(3) implementation for hppa. It is a nice idea, but does not | Miod Vallat | |
round in the right direction for halfway values. (noticed in the perl test results thanks to afresh1@) | |||
2022-12-27 | spelling fixes; from paul tagliamonte | Jason McIntyre | |
any changes not taken noted on tech, but chiefly here i did not take the cancelation - cancellation changes; | |||
2022-08-29 | use ansi volatile keyword, not __volatile | Jonathan Gray | |
ok miod@ guenther@ | |||
2022-08-27 | Use ENTRY_NB() instead of ENTRY() | Theo Buehler | |
Since llvm 13, there are compiler warnings in libm on amd64 and i386 due to .weak overriding an earlier .globl. Use ENTRY_NB() instead of ENTRY() to avoid emitting the .globl. ok deraadt jca (for amd64) ok guenther | |||
2021-09-17 | sys/param.h is not needed in this file | Theo de Raadt | |
2021-05-12 | Correct defines for fenv rounding modes and change fenv_t and fexcept_t | Jonathan Gray | |
from unsigned long long to unsigned int. ok kettenis@ | |||
2021-05-11 | use FE_ALL_EXCEPT not _ROUND_MASK when masking fcsr exception bits | Jonathan Gray | |
2021-04-27 | riscv64 additions for libm | Dale Rahn | |
ok kettenis@ | |||
2020-11-07 | Fix ilogb(3) implementation. The results have to match FP_ILOGB0 and | Mark Kettenis | |
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-07-09 | The fegetexceptflag() function should not have a DEF_STD. | Mark Kettenis | |
Brings arm64 in line with all the other architectures. ok millert@ | |||
2020-06-28 | Add powerpc64 fenv bits; copied from powerpc. From drahn@ | Mark Kettenis | |
2019-03-12 | Setting and getting the rounding mode on our arm64 FPU has not worked | Patrick Wildt | |
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@ | |||
2018-07-08 | Add missing retguard check | mortimer | |
ok deraadt | |||
2018-07-03 | Add retguard macros to libm assembly. | mortimer | |
ok deraadt | |||
2018-03-16 | Since most (if not all) ARMv8 hardware doesn't actually support trapping of | Mark Kettenis | |
floating-point exceptions, simplify the functions that control the exception masks just like we did on armv7. ok tom@ | |||
2018-03-12 | Make the binding of rintl, significand, and significandf consistently | Philip Guenther | |
'weak' in the static libm.a ok deraadt@ | |||
2018-02-28 | Change floating-point mode/environment control functions to operate on | Mark Kettenis | |
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-05 | Constants which can go into .rodata | Theo de Raadt | |
2017-08-19 | Use 0xcc trapsleds instead of default/nop/0xcc in BTC alignments | Theo de Raadt | |
don't bother with .text before ENTRY() | |||
2017-01-11 | Add support for AArch64. Based on FreeBSD's msun header, modified | Patrick Wildt | |
to look and feel like our code. | |||
2016-12-22 | copysign and copysignf are used within libm, so declare them accordingly. | Christian Weisgerber | |
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-12 | Reduce libm's exports and make internal calls go direct. | Philip Guenther | |
All dependencies on libc are now via reserved/standardized names. ok kettenis@ millert@ deraadt@ | |||
2016-09-01 | retire the sparc library code | Ted Unangst | |
2016-05-12 | more hppa64 cleaning | Theo de Raadt | |
2016-03-10 | more pieces of vax | Theo de Raadt | |
2015-01-20 | Missing $OpenBSD$'s. | Kenneth R Westerback | |
ok deraadt@ | |||
2014-09-12 | Provide a sparc64 version of sqrtl(3) that simply calls _Qp_sqrt. | Mark Kettenis | |
The generic sqrtl(3) is not nearly accurate enough for quad-precision floating point. | |||
2014-04-18 | It's been a quarter century: we can assume volatile is present with that name. | Philip Guenther | |
2014-03-18 | Retire hp300, mvme68k and mvme88k ports. These ports have no users, keeping | Miod Vallat | |
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-06 | scalbnf on vax, okay miod@ | Marc Espie | |
2013-07-15 | Fix atan2f() and hypotf() by actually converting both their arguments to the | Miod Vallat | |
larger type and passing them both the the double routine. | |||
2013-07-15 | add some missing asm functions to vax: long double as aliases to double, | Marc Espie | |
and float functions by cvtfd/cvtdf (like in netbsd) scalbnf will have to wait, as it's more complicated... brings vax in line with the rest. okay miod@/martynas@ | |||
2013-07-05 | VAX ELF userland bits. Consists mostly of register prefix additions. | Miod Vallat | |
2013-03-28 | Switch libc and libm to use strong aliases rather than weak aliases | Martynas 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-02 | Userland bits for m68k/ELF. Mostly addition of register prefixes to the | Miod Vallat | |
assembler instructions, and cope with the few changes in return values location. | |||
2013-01-13 | Get rid of the very ugly lint workarounds: LINTLIBRARY, PROTOLIB, | Martynas Venckus | |
and a few empty files for lint to chew on. | |||
2013-01-05 | Switch m88k ports to ELF. | Miod Vallat | |
2012-12-30 | Provide proper ldexp{f,l} aliases to scalbn{f,l} to match the MI (ld80) code. | Miod Vallat | |
2012-12-05 | Remove excessive sys/cdefs.h inclusion | Theo de Raadt | |
ok guenther millert kettenis | |||
2012-08-23 | Aliases for extended precision were missed on a few functions on hppa. | Martynas Venckus | |
Reported by Brad, thanks! | |||
2011-07-09 | Switch to the SSE code. OK mikeb@. | Martynas Venckus | |
2011-07-09 | Don't reimplement the same thing twice. OK matthew@. | Martynas Venckus | |
2011-07-08 | Revert (leaving the complex math part alone). Some stuff is depending | Martynas Venckus | |
on this historical behavior; so we're stuck in this stupid situation. No cookie for me. | |||
2011-07-08 | Move fabs(3), frexp(3), and modf(3) to libm--nothing has been using | Martynas Venckus | |
them in libc for a very long time. OK guenther@. | |||
2011-05-31 | Make lint play nicer in pass 2 of libm on amd64 and i386. The | Martynas 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. | |||
2011-05-30 | Trick lint into recording the right prototypes in the llib-lm.ln | Martynas Venckus | |
database on platforms without extended-precision floating-point support. Seems like a reasonable approach to millert@. | |||
2011-05-28 | Adapt m68k MD functions to extended-precision. | Martynas Venckus | |
Go for it miod@. | |||
2011-05-28 | Adapt m68k MD functions to single-precision. | Martynas Venckus | |
Looked over by miod@. |