Make quality improvements

- Write some more unit tests
- memcpy() on ARM is now faster
- Address the Musl complex math FIXME comments
- Some libm funcs like pow() now support setting errno
- Import the latest and greatest math functions from ARM
- Use more accurate atan2f() and log1pf() implementations
- atoi() and atol() will no longer saturate or clobber errno
This commit is contained in:
Justine Tunney 2024-02-25 14:57:28 -08:00
parent af8f2bd19f
commit 592f6ebc20
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
122 changed files with 6305 additions and 3859 deletions

View file

@ -32,7 +32,6 @@
#if !(LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024)
__static_yoink("musl_libc_notice");
#define FENV_SUPPORT 1
typedef struct {
@ -195,14 +194,12 @@ static inline u128 mul128_tail(u128 a, u128 b)
return lo;
}
/* see sqrt.c for detailed comments. */
/**
* Returns square root of 𝑥.
*/
long double sqrtl(long double x)
{
#ifdef __x86__
#if defined(__x86__)
asm("fsqrt" : "+t"(x));
return x;