From: Billy Laws <blaw...@gmail.com> --- mingw-w64-crt/misc/winbs_uint64.c | 2 +- mingw-w64-crt/misc/winbs_ulong.c | 5 +++-- mingw-w64-crt/misc/winbs_ushort.c | 5 +++-- 3 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/mingw-w64-crt/misc/winbs_uint64.c b/mingw-w64-crt/misc/winbs_uint64.c index c0b316221..705782de3 100644 --- a/mingw-w64-crt/misc/winbs_uint64.c +++ b/mingw-w64-crt/misc/winbs_uint64.c @@ -2,7 +2,7 @@ unsigned long long __cdecl _byteswap_uint64(unsigned long long _Int64); unsigned long long __cdecl _byteswap_uint64(unsigned long long _Int64) { -#if defined(_AMD64_) || defined(__x86_64__) +#if (defined(_AMD64_) && !defined(_ARM64EC_)) || (defined(__x86_64__) && !defined(__arm64ec__)) unsigned long long retval; __asm__ __volatile__ ("bswapq %[retval]" : [retval] "=rm" (retval) : "[retval]" (_Int64)); return retval; diff --git a/mingw-w64-crt/misc/winbs_ulong.c b/mingw-w64-crt/misc/winbs_ulong.c index 9cd6b2907..97d4f086d 100644 --- a/mingw-w64-crt/misc/winbs_ulong.c +++ b/mingw-w64-crt/misc/winbs_ulong.c @@ -2,7 +2,8 @@ unsigned long __cdecl _byteswap_ulong (unsigned long _Long); unsigned long __cdecl _byteswap_ulong (unsigned long _Long) { -#if defined(_AMD64_) || defined(__x86_64__) || defined(_X86_) || defined(__i386__) +#if (defined(_AMD64_) && !defined(_ARM64EC_)) || (defined(__x86_64__) && !defined(__arm64ec__)) || \ + defined(_X86_) || defined(__i386__) unsigned long retval; __asm__ __volatile__ ("bswapl %[retval]" : [retval] "=rm" (retval) : "[retval]" (_Long)); return retval; @@ -16,5 +17,5 @@ unsigned long __cdecl _byteswap_ulong (unsigned long _Long) b[1] = b[2]; b[2] = tmp; return _Long; -#endif /* defined(_AMD64_) || defined(__x86_64__) || defined(_X86_) || defined(__i386__) */ +#endif } diff --git a/mingw-w64-crt/misc/winbs_ushort.c b/mingw-w64-crt/misc/winbs_ushort.c index 46b57fda4..eb274b07f 100644 --- a/mingw-w64-crt/misc/winbs_ushort.c +++ b/mingw-w64-crt/misc/winbs_ushort.c @@ -2,7 +2,8 @@ unsigned short __cdecl _byteswap_ushort(unsigned short _Short); unsigned short __cdecl _byteswap_ushort(unsigned short _Short) { -#if defined(_AMD64_) || defined(__x86_64__) || defined(_X86_) || defined(__i386__) +#if (defined(_AMD64_) && !defined(_ARM64EC_)) || (defined(__x86_64__) && !defined(__arm64ec__)) || \ + defined(_X86_) || defined(__i386__) unsigned short retval; __asm__ __volatile__ ("rorw $8, %w[retval]" : [retval] "=rm" (retval) : "[retval]" (_Short)); return retval; @@ -13,5 +14,5 @@ unsigned short __cdecl _byteswap_ushort(unsigned short _Short) b[0] = b[1]; b[1] = tmp; return _Short; -#endif /* defined(_AMD64_) || defined(__x86_64__) || defined(_X86_) || defined(__i386__) */ +#endif } -- 2.48.1 _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public