From 50d1f62bf4a8d70466100463238228bc8305a5c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Thu, 21 Feb 2013 19:59:34 +0100 Subject: More GCC fixes --- java/endian.h | 62 ------------------------------------------------------- java/javaendian.h | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ java/membuffer.h | 2 +- 3 files changed, 63 insertions(+), 63 deletions(-) delete mode 100644 java/endian.h create mode 100644 java/javaendian.h (limited to 'java') diff --git a/java/endian.h b/java/endian.h deleted file mode 100644 index fa6207fe..00000000 --- a/java/endian.h +++ /dev/null @@ -1,62 +0,0 @@ -#pragma once -#include - -/** - * Swap bytes between big endian and local number representation - */ -namespace util -{ -#ifdef MULTIMC_BIG_ENDIAN -inline uint64_t bigswap(uint64_t x) -{ - return x; -}; -inline uint32_t bigswap(uint32_t x) -{ - return x; -}; -inline uint16_t bigswap(uint16_t x) -{ - return x; -}; -inline int64_t bigswap(int64_t x) -{ - return x; -}; -inline int32_t bigswap(int32_t x) -{ - return x; -}; -inline int16_t bigswap(int16_t x) -{ - return x; -}; -#else -inline uint64_t bigswap(uint64_t x) -{ - return (x>>56) | ((x<<40) & 0x00FF000000000000) | ((x<<24) & 0x0000FF0000000000) | ((x<<8) & 0x000000FF00000000) | - ((x>>8) & 0x00000000FF000000) | ((x>>24) & 0x0000000000FF0000) | ((x>>40) & 0x000000000000FF00) | (x<<56); -}; -inline uint32_t bigswap(uint32_t x) -{ - return (x>>24) | ((x<<8) & 0x00FF0000) | ((x>>8) & 0x0000FF00) | (x<<24); -}; -inline uint16_t bigswap(uint16_t x) -{ - return (x>>8) | (x<<8); -}; -inline int64_t bigswap(int64_t x) -{ - return (x>>56) | ((x<<40) & 0x00FF000000000000) | ((x<<24) & 0x0000FF0000000000) | ((x<<8) & 0x000000FF00000000) | - ((x>>8) & 0x00000000FF000000) | ((x>>24) & 0x0000000000FF0000) | ((x>>40) & 0x000000000000FF00) | (x<<56); -}; -inline int32_t bigswap(int32_t x) -{ - return (x>>24) | ((x<<8) & 0x00FF0000) | ((x>>8) & 0x0000FF00) | (x<<24); -}; -inline int16_t bigswap(int16_t x) -{ - return (x>>8) | (x<<8); -}; -#endif -} diff --git a/java/javaendian.h b/java/javaendian.h new file mode 100644 index 00000000..fa6207fe --- /dev/null +++ b/java/javaendian.h @@ -0,0 +1,62 @@ +#pragma once +#include + +/** + * Swap bytes between big endian and local number representation + */ +namespace util +{ +#ifdef MULTIMC_BIG_ENDIAN +inline uint64_t bigswap(uint64_t x) +{ + return x; +}; +inline uint32_t bigswap(uint32_t x) +{ + return x; +}; +inline uint16_t bigswap(uint16_t x) +{ + return x; +}; +inline int64_t bigswap(int64_t x) +{ + return x; +}; +inline int32_t bigswap(int32_t x) +{ + return x; +}; +inline int16_t bigswap(int16_t x) +{ + return x; +}; +#else +inline uint64_t bigswap(uint64_t x) +{ + return (x>>56) | ((x<<40) & 0x00FF000000000000) | ((x<<24) & 0x0000FF0000000000) | ((x<<8) & 0x000000FF00000000) | + ((x>>8) & 0x00000000FF000000) | ((x>>24) & 0x0000000000FF0000) | ((x>>40) & 0x000000000000FF00) | (x<<56); +}; +inline uint32_t bigswap(uint32_t x) +{ + return (x>>24) | ((x<<8) & 0x00FF0000) | ((x>>8) & 0x0000FF00) | (x<<24); +}; +inline uint16_t bigswap(uint16_t x) +{ + return (x>>8) | (x<<8); +}; +inline int64_t bigswap(int64_t x) +{ + return (x>>56) | ((x<<40) & 0x00FF000000000000) | ((x<<24) & 0x0000FF0000000000) | ((x<<8) & 0x000000FF00000000) | + ((x>>8) & 0x00000000FF000000) | ((x>>24) & 0x0000000000FF0000) | ((x>>40) & 0x000000000000FF00) | (x<<56); +}; +inline int32_t bigswap(int32_t x) +{ + return (x>>24) | ((x<<8) & 0x00FF0000) | ((x>>8) & 0x0000FF00) | (x<<24); +}; +inline int16_t bigswap(int16_t x) +{ + return (x>>8) | (x<<8); +}; +#endif +} diff --git a/java/membuffer.h b/java/membuffer.h index 48304b9f..2ea3a69b 100644 --- a/java/membuffer.h +++ b/java/membuffer.h @@ -3,7 +3,7 @@ #include #include #include -#include "endian.h" +#include "javaendian.h" namespace util { -- cgit v1.2.3