
On Friday 06 February 2009 16:53:03 Peter Tyser wrote:
On Fri, 2009-02-06 at 16:40 -0500, Mike Frysinger wrote:
On Friday 06 February 2009 16:22:01 Peter Tyser wrote:
+uint16_t bswap_16(uint16_t __x) +{
- return (__x >> 8) | (__x << 8);
+}
+uint32_t bswap_32(uint32_t __x) +{
- return (bswap_16(__x & 0xffff) << 16) | (bswap_16(__x >> 16));
+}
+uint64_t bswap_64(uint64_t __x) +{
- return (((uint64_t) bswap_32(__x & 0xffffffff)) << 32) |
(bswap_32(__x >> 32));
+}
we already have random duplicate copies of these floating around, and not related to Windows. these funcs are really only reliable on Linux. like the attached i'm using in my own tree.
I don't follow. Are you suggesting I include a generic version in a header similar to the uswap.h you mentioned? Or are you suggesting the current implementation is prone to break? Or both?
i'm saying creating yet another duplicate copy of the swap macros is wasteful. create a common version already and use it. -mike