1 | /* |
2 | Copyright Rene Rivera 2008-2015 |
3 | Distributed under the Boost Software License, Version 1.0. |
4 | (See accompanying file LICENSE_1_0.txt or copy at |
5 | http://www.boost.org/LICENSE_1_0.txt) |
6 | */ |
7 | |
8 | #ifndef BOOST_PREDEF_ARCHITECTURE_M68K_H |
9 | #define BOOST_PREDEF_ARCHITECTURE_M68K_H |
10 | |
11 | #include <boost/predef/version_number.h> |
12 | #include <boost/predef/make.h> |
13 | |
14 | /* tag::reference[] |
15 | = `BOOST_ARCH_M68K` |
16 | |
17 | http://en.wikipedia.org/wiki/M68k[Motorola 68k] architecture. |
18 | |
19 | [options="header"] |
20 | |=== |
21 | | {predef_symbol} | {predef_version} |
22 | |
23 | | `+__m68k__+` | {predef_detection} |
24 | | `M68000` | {predef_detection} |
25 | |
26 | | `+__mc68060__+` | 6.0.0 |
27 | | `mc68060` | 6.0.0 |
28 | | `+__mc68060+` | 6.0.0 |
29 | | `+__mc68040__+` | 4.0.0 |
30 | | `mc68040` | 4.0.0 |
31 | | `+__mc68040+` | 4.0.0 |
32 | | `+__mc68030__+` | 3.0.0 |
33 | | `mc68030` | 3.0.0 |
34 | | `+__mc68030+` | 3.0.0 |
35 | | `+__mc68020__+` | 2.0.0 |
36 | | `mc68020` | 2.0.0 |
37 | | `+__mc68020+` | 2.0.0 |
38 | | `+__mc68010__+` | 1.0.0 |
39 | | `mc68010` | 1.0.0 |
40 | | `+__mc68010+` | 1.0.0 |
41 | | `+__mc68000__+` | 0.0.1 |
42 | | `mc68000` | 0.0.1 |
43 | | `+__mc68000+` | 0.0.1 |
44 | |=== |
45 | */ // end::reference[] |
46 | |
47 | #define BOOST_ARCH_M68K BOOST_VERSION_NUMBER_NOT_AVAILABLE |
48 | |
49 | #if defined(__m68k__) || defined(M68000) |
50 | # undef BOOST_ARCH_M68K |
51 | # if !defined(BOOST_ARCH_M68K) && (defined(__mc68060__) || defined(mc68060) || defined(__mc68060)) |
52 | # define BOOST_ARCH_M68K BOOST_VERSION_NUMBER(6,0,0) |
53 | # endif |
54 | # if !defined(BOOST_ARCH_M68K) && (defined(__mc68040__) || defined(mc68040) || defined(__mc68040)) |
55 | # define BOOST_ARCH_M68K BOOST_VERSION_NUMBER(4,0,0) |
56 | # endif |
57 | # if !defined(BOOST_ARCH_M68K) && (defined(__mc68030__) || defined(mc68030) || defined(__mc68030)) |
58 | # define BOOST_ARCH_M68K BOOST_VERSION_NUMBER(3,0,0) |
59 | # endif |
60 | # if !defined(BOOST_ARCH_M68K) && (defined(__mc68020__) || defined(mc68020) || defined(__mc68020)) |
61 | # define BOOST_ARCH_M68K BOOST_VERSION_NUMBER(2,0,0) |
62 | # endif |
63 | # if !defined(BOOST_ARCH_M68K) && (defined(__mc68010__) || defined(mc68010) || defined(__mc68010)) |
64 | # define BOOST_ARCH_M68K BOOST_VERSION_NUMBER(1,0,0) |
65 | # endif |
66 | # if !defined(BOOST_ARCH_M68K) && (defined(__mc68000__) || defined(mc68000) || defined(__mc68000)) |
67 | # define BOOST_ARCH_M68K BOOST_VERSION_NUMBER_AVAILABLE |
68 | # endif |
69 | # if !defined(BOOST_ARCH_M68K) |
70 | # define BOOST_ARCH_M68K BOOST_VERSION_NUMBER_AVAILABLE |
71 | # endif |
72 | #endif |
73 | |
74 | #if BOOST_ARCH_M68K |
75 | # define BOOST_ARCH_M68K_AVAILABLE |
76 | #endif |
77 | |
78 | #define BOOST_ARCH_M68K_NAME "Motorola 68k" |
79 | |
80 | #endif |
81 | |
82 | #include <boost/predef/detail/test.h> |
83 | BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_M68K,BOOST_ARCH_M68K_NAME) |
84 | |