24 #ifndef AVUTIL_X86_BSWAP_H 25 #define AVUTIL_X86_BSWAP_H 36 #define av_bswap16 av_bswap16 37 static av_always_inline av_const uint16_t av_bswap16(uint16_t x)
42 #define av_bswap32 av_bswap32 43 static av_always_inline av_const uint32_t av_bswap32(uint32_t x)
45 return _byteswap_ulong(x);
49 #define av_bswap64 av_bswap64 50 static inline uint64_t av_const av_bswap64(uint64_t x)
52 return _byteswap_uint64(x);
59 #if AV_GCC_VERSION_AT_MOST(4,0) 60 #define av_bswap16 av_bswap16 61 static av_always_inline av_const
unsigned av_bswap16(
unsigned x)
63 __asm__(
"rorw $8, %w0" :
"+r"(x));
68 #if AV_GCC_VERSION_AT_MOST(4,4) || defined(__INTEL_COMPILER) 69 #define av_bswap32 av_bswap32 70 static av_always_inline av_const uint32_t av_bswap32(uint32_t x)
72 __asm__(
"bswap %0" :
"+r" (x));
77 #define av_bswap64 av_bswap64 78 static inline uint64_t av_const av_bswap64(uint64_t x)
80 __asm__(
"bswap %0":
"=r" (x) :
"0" (x));
Macro definitions for various function/variable attributes.