Products Support Documentation Download
pspplatcpu.h
Go to the documentation of this file.
1 /*
2  * Raima Database Manager
3  *
4  * Copyright (C) 2016 Raims Inc., All rights reserved.
5  *
6  * Use of this software, whether in source code format, or in executable,
7  * binary object code form, is governed by the Raima LICENSE which
8  * is fully described in the LICENSE.TXT file, included within this
9  * distribution of files.
10  */
11 
17 #if !defined(PSPPLATCPU_H_INCLUDED_)
18 #define PSPPLATCPU_H_INCLUDED_
19 
20 #include "pspplatdetect.h"
21 
22 #if defined(RDM_DOXYGEN)
23 
24 #define RDM_32BIT
25 #undef RDM_32BIT
26 
27 #define RDM_64BIT
28 #undef RDM_64BIT
29 
31 #define RDM_LITTLEENDIAN
32 #undef RDM_LITTLEENDIAN
33 
34 #define RDM_BIGENDIAN
35 #undef RDM_BIGENDIAN
36 
38 #define RDM_ALIGN4
39 #undef RDM_ALIGN4
40 
41 #define RDM_ALIGN8
42 #undef RDM_ALIGN8
43 
45 #define RDM_MUSTALIGN
46 #undef RDM_MUSTALIGN
47 
49 #define RDM_ANDROID
50 #undef RDM_ANDROID
51 
52 #define RDM_FREE_RTOS
53 #undef RDM_FREE_RTOS
54 
55 #define RDM_INTEGRITY
56 #undef RDM_INTEGRITY
57 
58 #define RDM_IPHONE
59 #undef RDM_IPHONE
60 
61 #define RDM_LINUX
62 #undef RDM_LINUX
63 
64 #define RDM_NEUTRINO
65 #undef RDM_NEUTRINO
66 
67 #define RDM_NO_OS
68 #undef RDM_NO_OS
69 
70 #define RDM_OSX
71 #undef RDM_OSX
72 
73 #define RDM_SOLARIS
74 #undef RDM_SOLARIS
75 
76 #define RDM_UNIX
77 #undef RDM_UNIX
78 
79 #define RDM_VXWORKS
80 #undef RDM_VXWORKS
81 
82 #define RDM_VXWORKS_RTP
83 #undef RDM_VXWORKS_RTP
84 
85 #define RDM_WINDOWS
86 #undef RDM_WINDOWS
87 
88 /* In this section we set:
89  RDM_<OS>
90  RDM_32BIT or RDM_64BIT
91  RDM_LITTLEENDIAN or RDM_BIGENDIAN
92  RDM_ALIGN4 or RDM_ALIGN8
93  RDM_MUSTALIGN where needed
94 */
95 
96 #elif defined(RDM_NO_OS_32)
97 #define RDM_NO_OS
98 #define RDM_LITTLEENDIAN
99 #define RDM_32BIT
100 #define RDM_ALIGN4
101 
102 #elif defined(RDM_NO_OS_64)
103 #define RDM_NO_OS
104 #define RDM_LITTLEENDIAN
105 #define RDM_64BIT
106 #define RDM_ALIGN8
107 
108 #elif defined(RDM_FREE_RTOS_32)
109 #define RDM_FREE_RTOS
110 #define RDM_LITTLEENDIAN
111 #define RDM_32BIT
112 #define RDM_ALIGN4
113 
114 #elif defined(RDM_FREE_RTOS_64)
115 #define RDM_FREE_RTOS
116 #define RDM_LITTLEENDIAN
117 #define RDM_64BIT
118 #define RDM_ALIGN8
119 
120 #elif defined(RDM_LINUX_X86)
121 #define RDM_LINUX
122 #define RDM_32BIT
123 #define RDM_LITTLEENDIAN
124 #define RDM_ALIGN4
125 
126 #elif defined(RDM_LINUX_X64)
127 #define RDM_LINUX
128 #define RDM_64BIT
129 #define RDM_LITTLEENDIAN
130 #define RDM_ALIGN8
131 
132 #elif defined(RDM_LINUX_ARM)
133 #define RDM_LINUX
134 #define RDM_32BIT
135 #define RDM_LITTLEENDIAN
136 #define RDM_ALIGN4
137 #define RDM_MUSTALIGN
138 
139 #elif defined(RDM_LINUX_AARCH64)
140 #define RDM_LINUX
141 #define RDM_64BIT
142 #define RDM_LITTLEENDIAN
143 #define RDM_ALIGN8
144 #define RDM_MUSTALIGN
145 
146 #elif defined(RDM_LINUX_POWERPC)
147 #define RDM_LINUX
148 #define RDM_32BIT
149 #define RDM_BIGENDIAN
150 #define RDM_ALIGN4
151 #define RDM_MUSTALIGN
152 
153 #elif defined(RDM_NEUTRINO_X86)
154 #define RDM_NEUTRINO
155 #define RDM_32BIT
156 #define RDM_LITTLEENDIAN
157 #define RDM_ALIGN4
158 
159 #elif defined(RDM_NEUTRINO_X86_64)
160 #define RDM_NEUTRINO
161 #define RDM_64BIT
162 #define RDM_LITTLEENDIAN
163 #define RDM_ALIGN8
164 
165 #elif defined(RDM_NEUTRINO_ARM)
166 #define RDM_NEUTRINO
167 #define RDM_32BIT
168 #define RDM_LITTLEENDIAN
169 #define RDM_ALIGN4
170 #define RDM_MUSTALIGN
171 
172 #elif defined(RDM_NEUTRINO_ARM64)
173 #define RDM_NEUTRINO
174 #define RDM_64BIT
175 #define RDM_LITTLEENDIAN
176 #define RDM_ALIGN8
177 #define RDM_MUSTALIGN
178 
179 #elif defined(RDM_NEUTRINO_PPC)
180 #define RDM_NEUTRINO
181 #define RDM_32BIT
182 #define RDM_BIGENDIAN
183 #define RDM_ALIGN4
184 #define RDM_MUSTALIGN
185 
186 #elif defined(RDM_IPHONE_ARM)
187 #define RDM_IPHONE
188 #define RDM_32BIT
189 #define RDM_LITTLEENDIAN
190 #define RDM_ALIGN4
191 #define RDM_MUSTALIGN
192 
193 #elif defined(RDM_OSX_X86)
194 #define RDM_OSX
195 #define RDM_32BIT
196 #define RDM_LITTLEENDIAN
197 #define RDM_ALIGN4
198 
199 #elif defined(RDM_OSX_X64)
200 #define RDM_OSX
201 #define RDM_64BIT
202 #define RDM_LITTLEENDIAN
203 #define RDM_ALIGN8
204 
205 #elif defined(RDM_SOLARIS_X86)
206 #define RDM_SOLARIS
207 #define RDM_32BIT
208 #define RDM_LITTLEENDIAN
209 #define RDM_ALIGN4
210 
211 #elif defined(RDM_SOLARIS_X64)
212 #define RDM_SOLARIS
213 #define RDM_64BIT
214 #define RDM_LITTLEENDIAN
215 #define RDM_ALIGN4
216 
217 #elif defined(RDM_SOLARIS_SPARC_32)
218 #define RDM_SOLARIS
219 #define RDM_32BIT
220 #define RDM_BIGENDIAN
221 #define RDM_ALIGN8
222 #define RDM_MUSTALIGN
223 
224 #elif defined(RDM_SOLARIS_SPARC_64)
225 #define RDM_SOLARIS
226 #define RDM_64BIT
227 #define RDM_BIGENDIAN
228 #define RDM_ALIGN8
229 #define RDM_MUSTALIGN
230 
231 #elif defined(RDM_WINDOWS_X86)
232 #define RDM_WINDOWS
233 #define RDM_32BIT
234 #define RDM_LITTLEENDIAN
235 #define RDM_ALIGN8
236 
237 #elif defined(RDM_WINDOWS_X64)
238 #define RDM_WINDOWS
239 #define RDM_64BIT
240 #define RDM_LITTLEENDIAN
241 #define RDM_ALIGN8
242 
243 #elif defined(RDM_VXWORKS_RTP_X86)
244 #define RDM_VXWORKS_RTP
245 #define RDM_32BIT
246 #define RDM_LITTLEENDIAN
247 #define RDM_ALIGN4
248 
249 #elif defined(RDM_VXWORKS_RTP_POWERPC)
250 #define RDM_VXWORKS_RTP
251 #define RDM_32BIT
252 #define RDM_BIGENDIAN
253 #define RDM_ALIGN4
254 
255 #elif defined(RDM_VXWORKS_RTP_ARM)
256 #define RDM_VXWORKS_RTP
257 #define RDM_32BIT
258 #define RDM_LITTLEENDIAN
259 #define RDM_ALIGN4
260 
261 #elif defined(RDM_VXWORKS_X86)
262 #define RDM_VXWORKS
263 #define RDM_32BIT
264 #define RDM_LITTLEENDIAN
265 #define RDM_ALIGN4
266 
267 #elif defined(VXWORKS_X64)
268 #define RDM_VXWORKS
269 #define RDM_64BIT
270 #define RDM_LITTLEENDIAN
271 #define RDM_ALIGN4
272 
273 #elif defined(RDM_VXWORKS_POWERPC)
274 #define RDM_VXWORKS
275 #define RDM_32BIT
276 #define RDM_BIGENDIAN
277 #define RDM_ALIGN4
278 
279 #elif defined(VXWORKS_MIPS)
280 #define RDM_VXWORKS
281 #define RDM_32BIT
282 #define RDM_BIGENDIAN
283 #define RDM_ALIGN4
284 
285 #elif defined(RDM_VXWORKS_SH4)
286 #define RDM_VXWORKS
287 #define RDM_32BIT
288 #define RDM_LITTLEENDIAN
289 #define RDM_ALIGN4
290 #define RDM_MUSTALIGN
291 
292 #elif defined(RDM_VXWORKS_ARM)
293 #define RDM_VXWORKS
294 #define RDM_32BIT
295 #define RDM_LITTLEENDIAN
296 #define RDM_ALIGN4
297 
298 #elif defined(RDM_INTEGRITY_X86)
299 #define RDM_INTEGRITY
300 #define RDM_32BIT
301 #define RDM_LITTLEENDIAN
302 #define RDM_ALIGN4
303 
304 #elif defined(RDM_INTEGRITY_ARM)
305 #define RDM_INTEGRITY
306 #define RDM_32BIT
307 #define RDM_LITTLEENDIAN
308 #define RDM_ALIGN4
309 
310 #elif defined(RDM_INTEGRITY_POWERPC)
311 #define RDM_INTEGRITY
312 #define RDM_32BIT
313 #define RDM_BIGENDIAN
314 #define RDM_MUSTALIGN
315 #define RDM_ALIGN4
316 
317 #elif defined(RDM_ANDROID_ARM)
318 #define RDM_ANDROID
319 #define RDM_32BIT
320 #define RDM_LITTLEENDIAN
321 #define RDM_ALIGN4
322 #define RDM_MUSTALIGN
323 
324 #else
325 #error No CPU specific section found
326 #endif
327 
328 #endif /* PSPPLATCPU_H_INCLUDED_ */
Header for the Platform Support Package - Compiler dependent detection of platform.