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_ITANIUM_64)
133 #define RDM_LINUX
134 #define RDM_64BIT
135 #define RDM_LITTLEENDIAN
136 #define RDM_ALIGN8
137 
138 #elif defined(RDM_LINUX_ARM)
139 #define RDM_LINUX
140 #define RDM_32BIT
141 #define RDM_LITTLEENDIAN
142 #define RDM_ALIGN4
143 #define RDM_MUSTALIGN
144 
145 #elif defined(RDM_LINUX_AARCH64)
146 #define RDM_LINUX
147 #define RDM_64BIT
148 #define RDM_LITTLEENDIAN
149 #define RDM_ALIGN8
150 #define RDM_MUSTALIGN
151 
152 #elif defined(RDM_LINUX_POWERPC)
153 #define RDM_LINUX
154 #define RDM_32BIT
155 #define RDM_BIGENDIAN
156 #define RDM_ALIGN4
157 #define RDM_MUSTALIGN
158 
159 #elif defined(RDM_NEUTRINO_X86)
160 #define RDM_NEUTRINO
161 #define RDM_32BIT
162 #define RDM_LITTLEENDIAN
163 #define RDM_ALIGN4
164 
165 #elif defined(RDM_NEUTRINO_X86_64)
166 #define RDM_NEUTRINO
167 #define RDM_64BIT
168 #define RDM_LITTLEENDIAN
169 #define RDM_ALIGN8
170 
171 #elif defined(RDM_NEUTRINO_ARM)
172 #define RDM_NEUTRINO
173 #define RDM_32BIT
174 #define RDM_LITTLEENDIAN
175 #define RDM_ALIGN4
176 #define RDM_MUSTALIGN
177 
178 #elif defined(RDM_NEUTRINO_ARM64)
179 #define RDM_NEUTRINO
180 #define RDM_64BIT
181 #define RDM_LITTLEENDIAN
182 #define RDM_ALIGN8
183 #define RDM_MUSTALIGN
184 
185 #elif defined(RDM_NEUTRINO_PPC)
186 #define RDM_NEUTRINO
187 #define RDM_32BIT
188 #define RDM_BIGENDIAN
189 #define RDM_ALIGN4
190 #define RDM_MUSTALIGN
191 
192 #elif defined(RDM_IPHONE_ARM)
193 #define RDM_IPHONE
194 #define RDM_32BIT
195 #define RDM_LITTLEENDIAN
196 #define RDM_ALIGN4
197 #define RDM_MUSTALIGN
198 
199 #elif defined(RDM_OSX_X86)
200 #define RDM_OSX
201 #define RDM_32BIT
202 #define RDM_LITTLEENDIAN
203 #define RDM_ALIGN4
204 
205 #elif defined(RDM_OSX_X64)
206 #define RDM_OSX
207 #define RDM_64BIT
208 #define RDM_LITTLEENDIAN
209 #define RDM_ALIGN8
210 
211 #elif defined(RDM_SOLARIS_X86)
212 #define RDM_SOLARIS
213 #define RDM_32BIT
214 #define RDM_LITTLEENDIAN
215 #define RDM_ALIGN4
216 
217 #elif defined(RDM_SOLARIS_X64)
218 #define RDM_SOLARIS
219 #define RDM_64BIT
220 #define RDM_LITTLEENDIAN
221 #define RDM_ALIGN4
222 
223 #elif defined(RDM_SOLARIS_SPARC_32)
224 #define RDM_SOLARIS
225 #define RDM_32BIT
226 #define RDM_BIGENDIAN
227 #define RDM_ALIGN8
228 #define RDM_MUSTALIGN
229 
230 #elif defined(RDM_SOLARIS_SPARC_64)
231 #define RDM_SOLARIS
232 #define RDM_64BIT
233 #define RDM_BIGENDIAN
234 #define RDM_ALIGN8
235 #define RDM_MUSTALIGN
236 
237 #elif defined(RDM_WINDOWS_X86)
238 #define RDM_WINDOWS
239 #define RDM_32BIT
240 #define RDM_LITTLEENDIAN
241 #define RDM_ALIGN8
242 
243 #elif defined(RDM_WINDOWS_X64)
244 #define RDM_WINDOWS
245 #define RDM_64BIT
246 #define RDM_LITTLEENDIAN
247 #define RDM_ALIGN8
248 
249 #elif defined(RDM_VXWORKS_RTP_X86)
250 #define RDM_VXWORKS_RTP
251 #define RDM_32BIT
252 #define RDM_LITTLEENDIAN
253 #define RDM_ALIGN4
254 
255 #elif defined(RDM_VXWORKS_RTP_POWERPC)
256 #define RDM_VXWORKS_RTP
257 #define RDM_32BIT
258 #define RDM_BIGENDIAN
259 #define RDM_ALIGN4
260 
261 #elif defined(RDM_VXWORKS_RTP_ARM)
262 #define RDM_VXWORKS_RTP
263 #define RDM_32BIT
264 #define RDM_LITTLEENDIAN
265 #define RDM_ALIGN4
266 
267 #elif defined(RDM_VXWORKS_X86)
268 #define RDM_VXWORKS
269 #define RDM_32BIT
270 #define RDM_LITTLEENDIAN
271 #define RDM_ALIGN4
272 
273 #elif defined(VXWORKS_X64)
274 #define RDM_VXWORKS
275 #define RDM_64BIT
276 #define RDM_LITTLEENDIAN
277 #define RDM_ALIGN4
278 
279 #elif defined(RDM_VXWORKS_POWERPC)
280 #define RDM_VXWORKS
281 #define RDM_32BIT
282 #define RDM_BIGENDIAN
283 #define RDM_ALIGN4
284 
285 #elif defined(VXWORKS_MIPS)
286 #define RDM_VXWORKS
287 #define RDM_32BIT
288 #define RDM_BIGENDIAN
289 #define RDM_ALIGN4
290 
291 #elif defined(RDM_VXWORKS_SH4)
292 #define RDM_VXWORKS
293 #define RDM_32BIT
294 #define RDM_LITTLEENDIAN
295 #define RDM_ALIGN4
296 #define RDM_MUSTALIGN
297 
298 #elif defined(RDM_VXWORKS_ARM)
299 #define RDM_VXWORKS
300 #define RDM_32BIT
301 #define RDM_LITTLEENDIAN
302 #define RDM_ALIGN4
303 
304 #elif defined(RDM_INTEGRITY_X86)
305 #define RDM_INTEGRITY
306 #define RDM_32BIT
307 #define RDM_LITTLEENDIAN
308 #define RDM_ALIGN4
309 
310 #elif defined(RDM_INTEGRITY_ARM)
311 #define RDM_INTEGRITY
312 #define RDM_32BIT
313 #define RDM_LITTLEENDIAN
314 #define RDM_ALIGN4
315 
316 #elif defined(RDM_INTEGRITY_POWERPC)
317 #define RDM_INTEGRITY
318 #define RDM_32BIT
319 #define RDM_BIGENDIAN
320 #define RDM_MUSTALIGN
321 #define RDM_ALIGN4
322 
323 #elif defined(RDM_ANDROID_ARM)
324 #define RDM_ANDROID
325 #define RDM_32BIT
326 #define RDM_LITTLEENDIAN
327 #define RDM_ALIGN4
328 #define RDM_MUSTALIGN
329 
330 #else
331 #error No CPU specific section found
332 #endif
333 
334 #endif /* PSPPLATCPU_H_INCLUDED_ */
Header for the Platform Support Package - Compiler dependent detection of platform.