RT-AC56 3.0.0.4.374.37 core
[tomato.git] / release / src-rt-6.x.4708 / linux / linux-2.6.36 / include / asm-generic / int-l64.h
blob1ca3efc976cc0b66541c4a7dfa8f4800361bf05f
1 /*
2 * asm-generic/int-l64.h
4 * Integer declarations for architectures which use "long"
5 * for 64-bit types.
6 */
8 #ifndef _ASM_GENERIC_INT_L64_H
9 #define _ASM_GENERIC_INT_L64_H
11 #include <asm/bitsperlong.h>
13 #ifndef __ASSEMBLY__
15 * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
16 * header files exported to user space
19 typedef __signed__ char __s8;
20 typedef unsigned char __u8;
22 typedef __signed__ short __s16;
23 typedef unsigned short __u16;
25 typedef __signed__ int __s32;
26 typedef unsigned int __u32;
28 typedef __signed__ long __s64;
29 typedef unsigned long __u64;
31 #endif /* __ASSEMBLY__ */
33 #ifdef __KERNEL__
35 #ifndef __ASSEMBLY__
37 typedef signed char s8;
38 typedef unsigned char u8;
40 typedef signed short s16;
41 typedef unsigned short u16;
43 typedef signed int s32;
44 typedef unsigned int u32;
46 typedef signed long s64;
47 typedef unsigned long u64;
49 #define S8_C(x) x
50 #define U8_C(x) x ## U
51 #define S16_C(x) x
52 #define U16_C(x) x ## U
53 #define S32_C(x) x
54 #define U32_C(x) x ## U
55 #define S64_C(x) x ## L
56 #define U64_C(x) x ## UL
58 #else /* __ASSEMBLY__ */
60 #define S8_C(x) x
61 #define U8_C(x) x
62 #define S16_C(x) x
63 #define U16_C(x) x
64 #define S32_C(x) x
65 #define U32_C(x) x
66 #define S64_C(x) x
67 #define U64_C(x) x
69 #endif /* __ASSEMBLY__ */
71 #endif /* __KERNEL__ */
73 #endif /* _ASM_GENERIC_INT_L64_H */