summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/include/byteswap.h
diff options
context:
space:
mode:
authorYaakov Selkowitz <yselkowi@redhat.com>2017-02-08 17:01:34 -0600
committerYaakov Selkowitz <yselkowi@redhat.com>2017-02-08 17:01:34 -0600
commite704ab2470159b7d8b6a02e8482bb5b38215ac9a (patch)
tree77ff789b0190d36bbbf3d1ee7c2e59945536e6dd /winsup/cygwin/include/byteswap.h
parent0eeb4c1d32aab0dbfd2a8f20aa326ae2d98ca1c6 (diff)
downloadcygnal-e704ab2470159b7d8b6a02e8482bb5b38215ac9a.tar.gz
cygnal-e704ab2470159b7d8b6a02e8482bb5b38215ac9a.tar.bz2
cygnal-e704ab2470159b7d8b6a02e8482bb5b38215ac9a.zip
Cygwin: create separate bits/byteswap.h
Match glibc behaviour to expose the public bswap_* macros only with an explicity #include <byteswap.h>; #include'ing <endian.h> should not expose them. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
Diffstat (limited to 'winsup/cygwin/include/byteswap.h')
-rw-r--r--winsup/cygwin/include/byteswap.h25
1 files changed, 1 insertions, 24 deletions
diff --git a/winsup/cygwin/include/byteswap.h b/winsup/cygwin/include/byteswap.h
index 5e3f22196..05bb5ca7d 100644
--- a/winsup/cygwin/include/byteswap.h
+++ b/winsup/cygwin/include/byteswap.h
@@ -9,33 +9,10 @@ details. */
#ifndef _BYTESWAP_H
#define _BYTESWAP_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-static __inline unsigned short
-__bswap_16 (unsigned short __x)
-{
- return (__x >> 8) | (__x << 8);
-}
-
-static __inline unsigned int
-__bswap_32 (unsigned int __x)
-{
- return (__bswap_16 (__x & 0xffff) << 16) | (__bswap_16 (__x >> 16));
-}
-
-static __inline unsigned long long
-__bswap_64 (unsigned long long __x)
-{
- return (((unsigned long long) __bswap_32 (__x & 0xffffffffull)) << 32) | (__bswap_32 (__x >> 32));
-}
+#include <bits/byteswap.h>
#define bswap_16(x) __bswap_16(x)
#define bswap_32(x) __bswap_32(x)
#define bswap_64(x) __bswap_64(x)
-#ifdef __cplusplus
-}
-#endif
#endif /* _BYTESWAP_H */