home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / src / linux-headers-2.6.17-6 / include / asm-ia64 / byteorder.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-08-11  |  830 b   |  43 lines

  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 */
  43.