arch: types.h: factor out fixed width typedefs to int-ll64.h
[platform/kernel/u-boot.git] / include / asm-generic / int-ll64.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * asm-generic/int-ll64.h
4  *
5  * Integer declarations for architectures which use "long long"
6  * for 64-bit types.
7  */
8
9 #ifndef _ASM_GENERIC_INT_LL64_H
10 #define _ASM_GENERIC_INT_LL64_H
11
12 #ifndef __ASSEMBLY__
13 /*
14  * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
15  * header files exported to user space
16  */
17
18 typedef __signed__ char __s8;
19 typedef unsigned char __u8;
20
21 typedef __signed__ short __s16;
22 typedef unsigned short __u16;
23
24 typedef __signed__ int __s32;
25 typedef unsigned int __u32;
26
27 #ifdef __GNUC__
28 __extension__ typedef __signed__ long long __s64;
29 __extension__ typedef unsigned long long __u64;
30 #else
31 typedef __signed__ long long __s64;
32 typedef unsigned long long __u64;
33 #endif
34
35 typedef __s8  s8;
36 typedef __u8  u8;
37 typedef __s16 s16;
38 typedef __u16 u16;
39 typedef __s32 s32;
40 typedef __u32 u32;
41 typedef __s64 s64;
42 typedef __u64 u64;
43
44 #endif /* __ASSEMBLY__ */
45
46
47 #endif /* _ASM_GENERIC_INT_LL64_H */