xref: /linux/tools/include/nolibc/arch.h (revision bb29b957eaaa15be33243550d9ee576c2d601669)
1 /* SPDX-License-Identifier: LGPL-2.1 OR MIT */
2 /*
3  * Copyright (C) 2017-2022 Willy Tarreau <w@1wt.eu>
4  */
5 
6 #ifndef _NOLIBC_ARCH_H
7 #define _NOLIBC_ARCH_H
8 
9 #if defined(__x86_64__) || defined(__i386__) || defined(__i486__) || defined(__i586__) || defined(__i686__)
10 #include "arch-x86.h"
11 #elif defined(__ARM_EABI__)
12 #include "arch-arm.h"
13 #elif defined(__aarch64__)
14 #include "arch-arm64.h"
15 #elif defined(__mips__)
16 #include "arch-mips.h"
17 #elif defined(__powerpc__)
18 #include "arch-powerpc.h"
19 #elif defined(__riscv)
20 #include "arch-riscv.h"
21 #elif defined(__s390x__)
22 #include "arch-s390.h"
23 #elif defined(__loongarch__)
24 #include "arch-loongarch.h"
25 #elif defined(__sparc__)
26 #include "arch-sparc.h"
27 #elif defined(__m68k__)
28 #include "arch-m68k.h"
29 #elif defined(__sh__)
30 #include "arch-sh.h"
31 #elif defined(__or1k__)
32 #include "arch-openrisc.h"
33 #elif defined(__hppa__)
34 #include "arch-parisc.h"
35 #elif defined(__alpha__)
36 #include "arch-alpha.h"
37 #elif defined(__hexagon__)
38 #include "arch-hexagon.h"
39 #else
40 #error Unsupported Architecture
41 #endif
42 
43 
44 #ifndef __NOLIBC_BITS_PER_SYSCALL_ARG
45 #define __NOLIBC_BITS_PER_SYSCALL_ARG __BITS_PER_LONG
46 #endif
47 
48 #endif /* _NOLIBC_ARCH_H */
49