Various changes which improve FreeBSD support.

Patches by martymac, all credits go to him ;)
This commit is contained in:
NeoBrainX
2011-08-27 20:42:11 +02:00
parent c0dd84cf7d
commit 06e640532a
7 changed files with 66 additions and 8 deletions

View File

@ -45,6 +45,8 @@ _mm_shuffle_epi8(__m128i a, __m128i mask)
#include <errno.h>
#ifdef __linux__
#include <byteswap.h>
#elif defined __FreeBSD__
#include <sys/endian.h>
#endif
// go to debugger mode
@ -137,6 +139,10 @@ inline __attribute__((always_inline)) u32 swap32(u32 _data)
{return __builtin_bswap32(_data);}
inline __attribute__((always_inline)) u64 swap64(u64 _data)
{return __builtin_bswap64(_data);}
#elif __FreeBSD__
inline u16 swap16(u16 _data) {return bswap16(_data);}
inline u32 swap32(u32 _data) {return bswap32(_data);}
inline u64 swap64(u64 _data) {return bswap64(_data);}
#else
// Slow generic implementation.
inline u16 swap16(u16 data) {return (data >> 8) | (data << 8);}