[buffer] <byteswap.h> is in glibc
[buffer] Newer GCC versions have __builtin_bswap