diff --git a/libc/arch-arm64/include/machine/endian.h b/libc/arch-arm64/include/machine/endian.h index 474373363..b9544afe5 100644 --- a/libc/arch-arm64/include/machine/endian.h +++ b/libc/arch-arm64/include/machine/endian.h @@ -31,13 +31,8 @@ #ifdef __GNUC__ -#define __swap16md(x) ({ \ - register u_int16_t _x = (x); \ - __asm volatile ("rev16 %0, %0" : "+r" (_x)); \ - _x; \ -}) - /* Use GCC builtins */ +#define __swap16md(x) __builtin_bswap16(x) #define __swap32md(x) __builtin_bswap32(x) #define __swap64md(x) __builtin_bswap64(x)