31#if defined(HAVE__BUILTIN_BSWAP16)
33#define pg_bswap16(x) __builtin_bswap16(x)
35#elif defined(_MSC_VER)
37#define pg_bswap16(x) _byteswap_ushort(x)
53#if defined(HAVE__BUILTIN_BSWAP32)
55#define pg_bswap32(x) __builtin_bswap32(x)
57#elif defined(_MSC_VER)
59#define pg_bswap32(x) _byteswap_ulong(x)
67 ((x << 24) & 0xff000000) |
68 ((x << 8) & 0x00ff0000) |
69 ((x >> 8) & 0x0000ff00) |
70 ((x >> 24) & 0x000000ff);
77#if defined(HAVE__BUILTIN_BSWAP64)
79#define pg_bswap64(x) __builtin_bswap64(x)
82#elif defined(_MSC_VER)
84#define pg_bswap64(x) _byteswap_uint64(x)
108#ifdef WORDS_BIGENDIAN
110#define pg_hton16(x) (x)
111#define pg_hton32(x) (x)
112#define pg_hton64(x) (x)
114#define pg_ntoh16(x) (x)
115#define pg_ntoh32(x) (x)
116#define pg_ntoh64(x) (x)
120#define pg_hton16(x) pg_bswap16(x)
121#define pg_hton32(x) pg_bswap32(x)
122#define pg_hton64(x) pg_bswap64(x)
124#define pg_ntoh16(x) pg_bswap16(x)
125#define pg_ntoh32(x) pg_bswap32(x)
126#define pg_ntoh64(x) pg_bswap64(x)
150#ifdef WORDS_BIGENDIAN
151#define DatumBigEndianToNative(x) (x)
154#define DatumBigEndianToNative(x) pg_bswap64(x)
156#define DatumBigEndianToNative(x) pg_bswap32(x)
#define UINT64CONST(x)
Definition: c.h:470
static uint16 pg_bswap16(uint16 x)
Definition: pg_bswap.h:42
static uint64 pg_bswap64(uint64 x)
Definition: pg_bswap.h:89
static uint32 pg_bswap32(uint32 x)
Definition: pg_bswap.h:64
unsigned short uint16
Definition: pg_ext_defs.in.h:12
unsigned int uint32
Definition: pg_ext_defs.in.h:13
unsigned long int uint64
Definition: pg_ext_defs.in.h:14