]> git.proxmox.com Git - ceph.git/blame - ceph/src/boost/boost/predef/architecture/arm.h
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / boost / predef / architecture / arm.h
CommitLineData
7c673cae 1/*
92f5a8d4 2Copyright Rene Rivera 2008-2019
7c673cae
FG
3Copyright Franz Detro 2014
4Copyright (c) Microsoft Corporation 2014
5Distributed under the Boost Software License, Version 1.0.
6(See accompanying file LICENSE_1_0.txt or copy at
7http://www.boost.org/LICENSE_1_0.txt)
8*/
9
10#ifndef BOOST_PREDEF_ARCHITECTURE_ARM_H
11#define BOOST_PREDEF_ARCHITECTURE_ARM_H
12
13#include <boost/predef/version_number.h>
14#include <boost/predef/make.h>
15
16/*`
17[heading `BOOST_ARCH_ARM`]
18
19[@http://en.wikipedia.org/wiki/ARM_architecture ARM] architecture.
20
21[table
22 [[__predef_symbol__] [__predef_version__]]
23
92f5a8d4 24 [[`__ARM_ARCH`] [__predef_detection__]]
7c673cae
FG
25 [[`__TARGET_ARCH_ARM`] [__predef_detection__]]
26 [[`__TARGET_ARCH_THUMB`] [__predef_detection__]]
27 [[`_M_ARM`] [__predef_detection__]]
92f5a8d4
TL
28 [[`__arm__`] [__predef_detection__]]
29 [[`__arm64`] [__predef_detection__]]
30 [[`__thumb__`] [__predef_detection__]]
b32b8144 31 [[`_M_ARM64`] [__predef_detection__]]
92f5a8d4
TL
32 [[`__aarch64__`] [__predef_detection__]]
33 [[`__AARCH64EL__`] [__predef_detection__]]
34 [[`__ARM_ARCH_7__`] [__predef_detection__]]
35 [[`__ARM_ARCH_7A__`] [__predef_detection__]]
36 [[`__ARM_ARCH_7R__`] [__predef_detection__]]
37 [[`__ARM_ARCH_7M__`] [__predef_detection__]]
38 [[`__ARM_ARCH_6K__`] [__predef_detection__]]
39 [[`__ARM_ARCH_6Z__`] [__predef_detection__]]
40 [[`__ARM_ARCH_6KZ__`] [__predef_detection__]]
41 [[`__ARM_ARCH_6T2__`] [__predef_detection__]]
42 [[`__ARM_ARCH_5TE__`] [__predef_detection__]]
43 [[`__ARM_ARCH_5TEJ__`] [__predef_detection__]]
44 [[`__ARM_ARCH_4T__`] [__predef_detection__]]
45 [[`__ARM_ARCH_4__`] [__predef_detection__]]
7c673cae 46
92f5a8d4 47 [[`__ARM_ARCH`] [V.0.0]]
7c673cae
FG
48 [[`__TARGET_ARCH_ARM`] [V.0.0]]
49 [[`__TARGET_ARCH_THUMB`] [V.0.0]]
50 [[`_M_ARM`] [V.0.0]]
92f5a8d4 51 [[`__arm64`] [8.0.0]]
b32b8144 52 [[`_M_ARM64`] [8.0.0]]
92f5a8d4
TL
53 [[`__aarch64__`] [8.0.0]]
54 [[`__AARCH64EL__`] [8.0.0]]
55 [[`__ARM_ARCH_7__`] [7.0.0]]
56 [[`__ARM_ARCH_7A__`] [7.0.0]]
57 [[`__ARM_ARCH_7R__`] [7.0.0]]
58 [[`__ARM_ARCH_7M__`] [7.0.0]]
59 [[`__ARM_ARCH_6K__`] [6.0.0]]
60 [[`__ARM_ARCH_6Z__`] [6.0.0]]
61 [[`__ARM_ARCH_6KZ__`] [6.0.0]]
62 [[`__ARM_ARCH_6T2__`] [6.0.0]]
63 [[`__ARM_ARCH_5TE__`] [5.0.0]]
64 [[`__ARM_ARCH_5TEJ__`] [5.0.0]]
65 [[`__ARM_ARCH_4T__`] [4.0.0]]
66 [[`__ARM_ARCH_4__`] [4.0.0]]
7c673cae
FG
67 ]
68 */
69
70#define BOOST_ARCH_ARM BOOST_VERSION_NUMBER_NOT_AVAILABLE
71
92f5a8d4
TL
72#if \
73 defined(__ARM_ARCH) || defined(__TARGET_ARCH_ARM) || \
74 defined(__TARGET_ARCH_THUMB) || defined(_M_ARM) || \
75 defined(__arm__) || defined(__arm64) || defined(__thumb__) || \
76 defined(_M_ARM64) || defined(__aarch64__) || defined(__AARCH64EL__) || \
77 defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \
78 defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) || \
79 defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \
80 defined(__ARM_ARCH_6KZ__) || defined(__ARM_ARCH_6T2__) || \
81 defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__) || \
82 defined(__ARM_ARCH_4T__) || defined(__ARM_ARCH_4__)
7c673cae 83# undef BOOST_ARCH_ARM
92f5a8d4
TL
84# if !defined(BOOST_ARCH_ARM) && defined(__ARM_ARCH)
85# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(__ARM_ARCH,0,0)
7c673cae
FG
86# endif
87# if !defined(BOOST_ARCH_ARM) && defined(__TARGET_ARCH_ARM)
88# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(__TARGET_ARCH_ARM,0,0)
89# endif
90# if !defined(BOOST_ARCH_ARM) && defined(__TARGET_ARCH_THUMB)
91# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(__TARGET_ARCH_THUMB,0,0)
92# endif
93# if !defined(BOOST_ARCH_ARM) && defined(_M_ARM)
94# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(_M_ARM,0,0)
95# endif
92f5a8d4
TL
96# if !defined(BOOST_ARCH_ARM) && ( \
97 defined(__arm64) || defined(_M_ARM64) || defined(__aarch64__) || \
98 defined(__AARCH64EL__) )
99# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(8,0,0)
100# endif
101# if !defined(BOOST_ARCH_ARM) && ( \
102 defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || \
103 defined(__ARM_ARCH_7R__) || defined(__ARM_ARCH_7M__) )
104# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(7,0,0)
105# endif
106# if !defined(BOOST_ARCH_ARM) && ( \
107 defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6Z__) || \
108 defined(__ARM_ARCH_6KZ__) || defined(__ARM_ARCH_6T2__) )
109# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(6,0,0)
110# endif
111# if !defined(BOOST_ARCH_ARM) && ( \
112 defined(__ARM_ARCH_5TE__) || defined(__ARM_ARCH_5TEJ__) )
113# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(5,0,0)
114# endif
115# if !defined(BOOST_ARCH_ARM) && ( \
116 defined(__ARM_ARCH_4T__) || defined(__ARM_ARCH_4__) )
117# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER(4,0,0)
118# endif
7c673cae
FG
119# if !defined(BOOST_ARCH_ARM)
120# define BOOST_ARCH_ARM BOOST_VERSION_NUMBER_AVAILABLE
121# endif
122#endif
123
124#if BOOST_ARCH_ARM
125# define BOOST_ARCH_ARM_AVAILABLE
126#endif
127
128#define BOOST_ARCH_ARM_NAME "ARM"
129
130#endif
131
132#include <boost/predef/detail/test.h>
133BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_ARM,BOOST_ARCH_ARM_NAME)