Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | #ifndef _ASM_IA64_BYTEORDER_H |
2 | #define _ASM_IA64_BYTEORDER_H | |
3 | ||
4 | /* | |
5 | * Modified 1998, 1999 | |
6 | * David Mosberger-Tang <davidm@hpl.hp.com>, Hewlett-Packard Co. | |
7 | */ | |
8 | ||
9 | #include <asm/types.h> | |
10 | #include <asm/intrinsics.h> | |
11 | #include <linux/compiler.h> | |
12 | ||
13 | static __inline__ __attribute_const__ __u64 | |
14 | __ia64_swab64 (__u64 x) | |
15 | { | |
16 | __u64 result; | |
17 | ||
18 | result = ia64_mux1(x, ia64_mux1_rev); | |
19 | return result; | |
20 | } | |
21 | ||
22 | static __inline__ __attribute_const__ __u32 | |
23 | __ia64_swab32 (__u32 x) | |
24 | { | |
25 | return __ia64_swab64(x) >> 32; | |
26 | } | |
27 | ||
28 | static __inline__ __attribute_const__ __u16 | |
29 | __ia64_swab16(__u16 x) | |
30 | { | |
31 | return __ia64_swab64(x) >> 48; | |
32 | } | |
33 | ||
34 | #define __arch__swab64(x) __ia64_swab64(x) | |
35 | #define __arch__swab32(x) __ia64_swab32(x) | |
36 | #define __arch__swab16(x) __ia64_swab16(x) | |
37 | ||
38 | #define __BYTEORDER_HAS_U64__ | |
39 | ||
40 | #include <linux/byteorder/little_endian.h> | |
41 | ||
42 | #endif /* _ASM_IA64_BYTEORDER_H */ |