View | Details | Raw Unified | Return to bug 242053 | Differences between
and this patch

Collapse All | Expand All

(-)libctf/swap.h (-30 / +15 lines)
Lines 28-66 Link Here
28
#else
28
#else
29
29
30
/* Provide our own versions of the byteswap functions.  */
30
/* Provide our own versions of the byteswap functions.  */
31
inline uint16_t
31
#define bswap_16(v) ((v >> 8) & 0xff) | ((v & 0xff) << 8)
32
bswap_16 (uint16_t v)
33
{
34
  return ((v >> 8) & 0xff) | ((v & 0xff) << 8);
35
}
36
32
37
inline uint32_t
33
#define bswap_32(v) (  ((v & 0xff000000) >> 24) \
38
bswap_32 (uint32_t v)
34
      | ((v & 0x00ff0000) >>  8) \
39
{
35
      | ((v & 0x0000ff00) <<  8) \
40
  return (  ((v & 0xff000000) >> 24)
36
      | ((v & 0x000000ff) << 24))
41
	  | ((v & 0x00ff0000) >>  8)
42
	  | ((v & 0x0000ff00) <<  8)
43
	  | ((v & 0x000000ff) << 24));
44
}
45
37
46
inline uint64_t
38
#define bswap_identity_64(v) (v)
47
bswap_identity_64 (uint64_t v)
48
{
49
  return v;
50
}
51
39
52
inline uint64_t
40
#define bswap_64(v) (  ((v & 0xff00000000000000ULL) >> 56) \
53
bswap_64 (uint64_t v)
41
	  | ((v & 0x00ff000000000000ULL) >> 40) \
54
{
42
	  | ((v & 0x0000ff0000000000ULL) >> 24) \
55
  return (  ((v & 0xff00000000000000ULL) >> 56)
43
	  | ((v & 0x000000ff00000000ULL) >>  8) \
56
	  | ((v & 0x00ff000000000000ULL) >> 40)
44
	  | ((v & 0x00000000ff000000ULL) <<  8) \
57
	  | ((v & 0x0000ff0000000000ULL) >> 24)
45
	  | ((v & 0x0000000000ff0000ULL) << 24) \
58
	  | ((v & 0x000000ff00000000ULL) >>  8)
46
	  | ((v & 0x000000000000ff00ULL) << 40) \
59
	  | ((v & 0x00000000ff000000ULL) <<  8)
47
	  | ((v & 0x00000000000000ffULL) << 56))
60
	  | ((v & 0x0000000000ff0000ULL) << 24)
48
61
	  | ((v & 0x000000000000ff00ULL) << 40)
62
	  | ((v & 0x00000000000000ffULL) << 56));
63
}
64
#endif /* !defined(HAVE_BYTESWAP_H) */
49
#endif /* !defined(HAVE_BYTESWAP_H) */
65
50
66
#endif /* !defined(_CTF_SWAP_H) */
51
#endif /* !defined(_CTF_SWAP_H) */

Return to bug 242053