1 | /* |
2 | Copyright Rene Rivera 2008-2013 |
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_PPC_H |
9 | #define BOOST_PREDEF_ARCHITECTURE_PPC_H |
10 | |
11 | #include <boost/predef/version_number.h> |
12 | #include <boost/predef/make.h> |
13 | |
14 | /*` |
15 | [heading `BOOST_ARCH_PPC`] |
16 | |
17 | [@http://en.wikipedia.org/wiki/PowerPC PowerPC] architecture. |
18 | |
19 | [table |
20 | [[__predef_symbol__] [__predef_version__]] |
21 | |
22 | [[`__powerpc`] [__predef_detection__]] |
23 | [[`__powerpc__`] [__predef_detection__]] |
24 | [[`__POWERPC__`] [__predef_detection__]] |
25 | [[`__ppc__`] [__predef_detection__]] |
26 | [[`_M_PPC`] [__predef_detection__]] |
27 | [[`_ARCH_PPC`] [__predef_detection__]] |
28 | [[`__PPCGECKO__`] [__predef_detection__]] |
29 | [[`__PPCBROADWAY__`] [__predef_detection__]] |
30 | [[`_XENON`] [__predef_detection__]] |
31 | |
32 | [[`__ppc601__`] [6.1.0]] |
33 | [[`_ARCH_601`] [6.1.0]] |
34 | [[`__ppc603__`] [6.3.0]] |
35 | [[`_ARCH_603`] [6.3.0]] |
36 | [[`__ppc604__`] [6.4.0]] |
37 | [[`__ppc604__`] [6.4.0]] |
38 | ] |
39 | */ |
40 | |
41 | #define BOOST_ARCH_PPC BOOST_VERSION_NUMBER_NOT_AVAILABLE |
42 | |
43 | #if defined(__powerpc) || defined(__powerpc__) || \ |
44 | defined(__POWERPC__) || defined(__ppc__) || \ |
45 | defined(_M_PPC) || defined(_ARCH_PPC) || \ |
46 | defined(__PPCGECKO__) || defined(__PPCBROADWAY__) || \ |
47 | defined(_XENON) |
48 | # undef BOOST_ARCH_PPC |
49 | # if !defined (BOOST_ARCH_PPC) && (defined(__ppc601__) || defined(_ARCH_601)) |
50 | # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,1,0) |
51 | # endif |
52 | # if !defined (BOOST_ARCH_PPC) && (defined(__ppc603__) || defined(_ARCH_603)) |
53 | # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,3,0) |
54 | # endif |
55 | # if !defined (BOOST_ARCH_PPC) && (defined(__ppc604__) || defined(__ppc604__)) |
56 | # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER(6,4,0) |
57 | # endif |
58 | # if !defined (BOOST_ARCH_PPC) |
59 | # define BOOST_ARCH_PPC BOOST_VERSION_NUMBER_AVAILABLE |
60 | # endif |
61 | #endif |
62 | |
63 | #if BOOST_ARCH_PPC |
64 | # define BOOST_ARCH_PPC_AVAILABLE |
65 | #endif |
66 | |
67 | #define BOOST_ARCH_PPC_NAME "PowerPC" |
68 | |
69 | #include <boost/predef/detail/test.h> |
70 | BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_PPC,BOOST_ARCH_PPC_NAME) |
71 | |
72 | |
73 | #endif |
74 | |