Linux-2.6.12-rc2
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / include / asm-m68k / byteorder.h
blob81d420b35c80a0dfef3fd90c9cd261378b386a4d
1 #ifndef _M68K_BYTEORDER_H
2 #define _M68K_BYTEORDER_H
4 #include <asm/types.h>
5 #include <linux/compiler.h>
7 #ifdef __GNUC__
9 static __inline__ __attribute_const__ __u32 ___arch__swab32(__u32 val)
11 __asm__("rolw #8,%0; swap %0; rolw #8,%0" : "=d" (val) : "0" (val));
12 return val;
14 #define __arch__swab32(x) ___arch__swab32(x)
16 #endif
18 #if defined(__GNUC__) && !defined(__STRICT_ANSI__) || defined(__KERNEL__)
19 # define __BYTEORDER_HAS_U64__
20 # define __SWAB_64_THRU_32__
21 #endif
23 #include <linux/byteorder/big_endian.h>
25 #endif /* _M68K_BYTEORDER_H */