Revision 367e86e8 thunk.h

b/thunk.h
28 28

  
29 29
#define bswap_64(x) \
30 30
({ \
31
	__u64 __x = (x); \
32
	((__u64)( \
33
		(__u64)(((__u64)(__x) & (__u64)0x00000000000000ffULL) << 56) | \
34
		(__u64)(((__u64)(__x) & (__u64)0x000000000000ff00ULL) << 40) | \
35
		(__u64)(((__u64)(__x) & (__u64)0x0000000000ff0000ULL) << 24) | \
36
		(__u64)(((__u64)(__x) & (__u64)0x00000000ff000000ULL) <<  8) | \
37
	        (__u64)(((__u64)(__x) & (__u64)0x000000ff00000000ULL) >>  8) | \
38
		(__u64)(((__u64)(__x) & (__u64)0x0000ff0000000000ULL) >> 24) | \
39
		(__u64)(((__u64)(__x) & (__u64)0x00ff000000000000ULL) >> 40) | \
40
		(__u64)(((__u64)(__x) & (__u64)0xff00000000000000ULL) >> 56) )); \
31
	uint64_t __x = (x); \
32
	((uint64_t)( \
33
		(uint64_t)(((uint64_t)(__x) & (uint64_t)0x00000000000000ffULL) << 56) | \
34
		(uint64_t)(((uint64_t)(__x) & (uint64_t)0x000000000000ff00ULL) << 40) | \
35
		(uint64_t)(((uint64_t)(__x) & (uint64_t)0x0000000000ff0000ULL) << 24) | \
36
		(uint64_t)(((uint64_t)(__x) & (uint64_t)0x00000000ff000000ULL) <<  8) | \
37
	        (uint64_t)(((uint64_t)(__x) & (uint64_t)0x000000ff00000000ULL) >>  8) | \
38
		(uint64_t)(((uint64_t)(__x) & (uint64_t)0x0000ff0000000000ULL) >> 24) | \
39
		(uint64_t)(((uint64_t)(__x) & (uint64_t)0x00ff000000000000ULL) >> 40) | \
40
		(uint64_t)(((uint64_t)(__x) & (uint64_t)0xff00000000000000ULL) >> 56) )); \
41 41
})
42 42

  
43 43
#endif
......
51 51
#define BSWAP_NEEDED
52 52
#endif
53 53

  
54
/* XXX: auto autoconf */
54
/* XXX: autoconf */
55 55
#define TARGET_I386
56 56
#define TARGET_LONG_BITS 32
57 57

  

Also available in: Unified diff