at v2.6.25 31 lines 744 B view raw
1/* 2 * AVR32 endian-conversion functions. 3 */ 4#ifndef __ASM_AVR32_BYTEORDER_H 5#define __ASM_AVR32_BYTEORDER_H 6 7#include <asm/types.h> 8#include <linux/compiler.h> 9 10#ifdef __CHECKER__ 11extern unsigned long __builtin_bswap_32(unsigned long x); 12extern unsigned short __builtin_bswap_16(unsigned short x); 13#endif 14 15/* 16 * avr32-linux-gcc versions earlier than 4.2 improperly sign-extends 17 * the result. 18 */ 19#if !(__GNUC__ == 4 && __GNUC_MINOR__ < 2) 20#define __arch__swab32(x) __builtin_bswap_32(x) 21#define __arch__swab16(x) __builtin_bswap_16(x) 22#endif 23 24#if !defined(__STRICT_ANSI__) || defined(__KERNEL__) 25# define __BYTEORDER_HAS_U64__ 26# define __SWAB_64_THRU_32__ 27#endif 28 29#include <linux/byteorder/big_endian.h> 30 31#endif /* __ASM_AVR32_BYTEORDER_H */