mirror of https://github.com/xemu-project/xemu.git
qemu/bswap: Replace bswapXXs() by compiler __builtin_bswap()
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20230111163147.71761-3-philmd@linaro.org> Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
6366ca31ef
commit
b1032a23ed
|
@ -50,29 +50,31 @@ static inline uint64_t bswap64(uint64_t x)
|
||||||
|
|
||||||
static inline void bswap16s(uint16_t *s)
|
static inline void bswap16s(uint16_t *s)
|
||||||
{
|
{
|
||||||
*s = bswap16(*s);
|
*s = __builtin_bswap16(*s);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void bswap32s(uint32_t *s)
|
static inline void bswap32s(uint32_t *s)
|
||||||
{
|
{
|
||||||
*s = bswap32(*s);
|
*s = __builtin_bswap32(*s);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void bswap64s(uint64_t *s)
|
static inline void bswap64s(uint64_t *s)
|
||||||
{
|
{
|
||||||
*s = bswap64(*s);
|
*s = __builtin_bswap64(*s);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if HOST_BIG_ENDIAN
|
#if HOST_BIG_ENDIAN
|
||||||
#define be_bswap(v, size) (v)
|
#define be_bswap(v, size) (v)
|
||||||
#define le_bswap(v, size) glue(bswap, size)(v)
|
#define le_bswap(v, size) glue(__builtin_bswap, size)(v)
|
||||||
#define be_bswaps(v, size)
|
#define be_bswaps(v, size)
|
||||||
#define le_bswaps(p, size) do { *p = glue(bswap, size)(*p); } while(0)
|
#define le_bswaps(p, size) \
|
||||||
|
do { *p = glue(__builtin_bswap, size)(*p); } while (0)
|
||||||
#else
|
#else
|
||||||
#define le_bswap(v, size) (v)
|
#define le_bswap(v, size) (v)
|
||||||
#define be_bswap(v, size) glue(bswap, size)(v)
|
#define be_bswap(v, size) glue(__builtin_bswap, size)(v)
|
||||||
#define le_bswaps(v, size)
|
#define le_bswaps(v, size)
|
||||||
#define be_bswaps(p, size) do { *p = glue(bswap, size)(*p); } while(0)
|
#define be_bswaps(p, size) \
|
||||||
|
do { *p = glue(__builtin_bswap, size)(*p); } while (0)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue