diff --git a/swap.h b/swap.h index 1072bff..64f5acc 100644 --- a/swap.h +++ b/swap.h @@ -1,5 +1,15 @@ #include +/*** Another swap option: +#include +inline uint32_t bswap2(uint32_t val) +{ +__asm__("bswap %0" : "+r" (val)); +return val; +} +See: http://objectmix.com/asm-x86-asm-370/69484-x86-inline-assembly-bswap.html +***/ + #if !defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__) # error Either __BIG_ENDIAN__ or __LITTLE_ENDIAN__ must be defined. #endif