1 /*
2  * Copyright (c) 2006 - 2010, Nils R. Weller
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * 1. Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  * 2. Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the distribution.
14  *
15  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
19  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25  * POSSIBILITY OF SUCH DAMAGE.
26  */
27 #ifndef ARCHDEFS_H
28 #define ARCHDEFS_H
29 
30 #define ARCH_X86 	1
31 #define ARCH_PA		2
32 #define ARCH_POWER	3
33 #define ARCH_MIPS	4
34 #define ARCH_ITANIUM	5
35 #define ARCH_SPARC	6
36 #define ARCH_ALPHA	7
37 #define ARCH_AMD64	8
38 #define ARCH_ARM	9
39 #define ARCH_SH		10
40 
41 /*
42  * XXX This only lists the ABI in cases where more than one is available.
43  * On systems like x86 where we use SysV, the ABI flags are not set or
44  * used. This needs to be overhauled (and much of misc.c and in the
45  * backends really belongs here)
46  */
47 #define ABI_MIPS_N32	1
48 #define ABI_MIPS_N64	2
49 #define ABI_POWER64	5
50 #define ABI_POWER32	6
51 #define ABI_SPARC32	7
52 #define ABI_SPARC64	8
53 
54 #define OS_LINUX	1
55 /*
56  * FreeBSD includes close derivatives like MidnightBSD
57  */
58 #define OS_FREEBSD	2
59 #define OS_OPENBSD	3
60 #define OS_NETBSD	4
61 #define OS_AIX		5
62 #define OS_IRIX		6
63 #define OS_SOLARIS	7
64 #define OS_OSX		8
65 /*
66  * DragonFly and MirBSD cannot be combined with FreeBSD and OpenBSD
67  * because they use different linker flags
68  */
69 #define OS_DRAGONFLYBSD	9
70 #define OS_MIRBSD	10
71 
72 #endif
73 
74