From: Mark Adler Date: Sat, 3 Mar 2012 08:03:30 +0000 (-0800) Subject: Don't use library or built-in byte swaps. X-Git-Tag: v1.2.7~45 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2547c6c81fbf751e22ab7dcafdc1d1b50c8562a3;p=thirdparty%2Fzlib-ng.git Don't use library or built-in byte swaps. Using optimized byte swaps reduced portability for no real benefit, since they are in parts of the code that represent a tiny fraction of the execution time. So a simple definition of a byte swap is now used. --- diff --git a/zutil.h b/zutil.h index 7a409fad6..7be5f5549 100644 --- a/zutil.h +++ b/zutil.h @@ -246,18 +246,7 @@ extern const char * const z_errmsg[10]; /* indexed by 2-zlib_error */ #define TRY_FREE(s, p) {if (p) ZFREE(s, p);} /* Reverse the bytes in a 32-bit value */ -#ifndef Z_SOLO -# if defined(_WIN32) && (_MSC_VER >= 1300) && (defined(_M_IX86) || defined(_M_X64)) -# include -# pragma intrinsic(_byteswap_ulong) -# define ZSWAP32(q) _byteswap_ulong(q) -# elif defined(__GNUC__) && ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) -# define ZSWAP32(q) __builtin_bswap32(q) -# endif -#endif -#ifndef ZSWAP32 -# define ZSWAP32(q) ((((q) >> 24) & 0xff) + (((q) >> 8) & 0xff00) + \ - (((q) & 0xff00) << 8) + (((q) & 0xff) << 24)) -#endif +#define ZSWAP32(q) ((((q) >> 24) & 0xff) + (((q) >> 8) & 0xff00) + \ + (((q) & 0xff00) << 8) + (((q) & 0xff) << 24)) #endif /* ZUTIL_H */