In preparation for ARM64EC support. Signed-off-by: Jacek Caban <ja...@codeweavers.com> --- mingw-w64-headers/crt/math.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/mingw-w64-headers/crt/math.h b/mingw-w64-headers/crt/math.h index 85ef06773..e5b12d8d6 100644 --- a/mingw-w64-headers/crt/math.h +++ b/mingw-w64-headers/crt/math.h @@ -397,7 +397,9 @@ typedef long double double_t; #ifndef __CRT__NO_INLINE __CRT_INLINE int __cdecl __fpclassifyl (long double x) { -#if defined(__x86_64__) || defined(_AMD64_) +#if defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_) + return __fpclassify(x); +#elif defined(__x86_64__) || defined(_AMD64_) __mingw_ldbl_type_t hlp; unsigned int e; hlp.x = x; @@ -414,8 +416,6 @@ typedef long double double_t; return (((hlp.lh.high & 0x7fffffff) | hlp.lh.low) == 0 ? FP_INFINITE : FP_NAN); return FP_NORMAL; -#elif defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_) - return __fpclassify(x); #elif defined(__i386__) || defined(_X86_) unsigned short sw; __asm__ __volatile__ ("fxam; fstsw %%ax;" : "=a" (sw): "t" (x)); @@ -551,7 +551,9 @@ __mingw_choose_expr ( \ __CRT_INLINE int __cdecl __isnanl (long double _x) { -#if defined(__x86_64__) || defined(_AMD64_) +#if defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_) + return __isnan(_x); +#elif defined(__x86_64__) || defined(_AMD64_) __mingw_ldbl_type_t ld; unsigned int xx, signexp; @@ -561,8 +563,6 @@ __mingw_choose_expr ( \ signexp |= (xx | (-xx)) >> 31; signexp = 0xfffe - signexp; return (int) signexp >> 16; -#elif defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_) - return __isnan(_x); #elif defined(__i386__) || defined(_X86_) unsigned short sw; __asm__ __volatile__ ("fxam;" @@ -621,12 +621,12 @@ __mingw_choose_expr ( \ } __CRT_INLINE int __cdecl __signbitl (long double x) { -#if defined(__x86_64__) || defined(_AMD64_) +#if defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_) + return __signbit(x); +#elif defined(__x86_64__) || defined(_AMD64_) __mingw_ldbl_type_t ld; ld.x = x; return ((ld.lh.sign_exponent & 0x8000) != 0); -#elif defined(__arm__) || defined(_ARM_) || defined(__aarch64__) || defined(_ARM64_) - return __signbit(x); #elif defined(__i386__) || defined(_X86_) unsigned short stw; __asm__ __volatile__ ("fxam; fstsw %%ax;": "=a" (stw) : "t" (x)); -- 2.45.2 _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public