Import 2.3.18pre1
[davej-history.git] / include / asm-alpha / types.h
blob381d5f0441dca5c9de0c338b0322480ad1233e19
1 #ifndef _ALPHA_TYPES_H
2 #define _ALPHA_TYPES_H
4 /*
5 * This file is never included by application software unless
6 * explicitly requested (e.g., via linux/types.h) in which case the
7 * application is Linux specific so (user-) name space pollution is
8 * not a major issue. However, for interoperability, libraries still
9 * need to be careful to avoid a name clashes.
12 typedef unsigned int umode_t;
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;
29 * There are 32-bit compilers for the alpha out there..
31 #if ((~0UL) == 0xffffffff)
33 #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
34 typedef __signed__ long long __s64;
35 typedef unsigned long long __u64;
36 #endif
38 #else
40 typedef __signed__ long __s64;
41 typedef unsigned long __u64;
43 #endif
46 * These aren't exported outside the kernel to avoid name space clashes
48 #ifdef __KERNEL__
50 typedef signed char s8;
51 typedef unsigned char u8;
53 typedef signed short s16;
54 typedef unsigned short u16;
56 typedef signed int s32;
57 typedef unsigned int u32;
60 * There are 32-bit compilers for the alpha out there..
62 #if ((~0UL) == 0xffffffff)
64 typedef signed long long s64;
65 typedef unsigned long long u64;
66 #define BITS_PER_LONG 32
68 #else
70 typedef signed long s64;
71 typedef unsigned long u64;
72 #define BITS_PER_LONG 64
74 #endif
76 #endif /* __KERNEL__ */
77 #endif /* _ALPHA_TYPES_H */