Subversion Repositories Kolibri OS

Rev

Rev 4874 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4874 Rev 4921
1
#ifndef __IEEE_BIG_ENDIAN
1
#ifndef __IEEE_BIG_ENDIAN
2
#ifndef __IEEE_LITTLE_ENDIAN
2
#ifndef __IEEE_LITTLE_ENDIAN
3
 
3
 
4
/* This file can define macros to choose variations of the IEEE float
4
/* This file can define macros to choose variations of the IEEE float
5
   format:
5
   format:
6
 
6
 
7
   _FLT_LARGEST_EXPONENT_IS_NORMAL
7
   _FLT_LARGEST_EXPONENT_IS_NORMAL
8
 
8
 
9
	Defined if the float format uses the largest exponent for finite
9
	Defined if the float format uses the largest exponent for finite
10
	numbers rather than NaN and infinity representations.  Such a
10
	numbers rather than NaN and infinity representations.  Such a
11
	format cannot represent NaNs or infinities at all, but it's FLT_MAX
11
	format cannot represent NaNs or infinities at all, but it's FLT_MAX
12
	is twice the IEEE value.
12
	is twice the IEEE value.
13
 
13
 
14
   _FLT_NO_DENORMALS
14
   _FLT_NO_DENORMALS
15
 
15
 
16
	Defined if the float format does not support IEEE denormals.  Every
16
	Defined if the float format does not support IEEE denormals.  Every
17
	float with a zero exponent is taken to be a zero representation.
17
	float with a zero exponent is taken to be a zero representation.
18
 
18
 
19
   ??? At the moment, there are no equivalent macros above for doubles and
19
   ??? At the moment, there are no equivalent macros above for doubles and
20
   the macros are not fully supported by --enable-newlib-hw-fp.
20
   the macros are not fully supported by --enable-newlib-hw-fp.
21
 
21
 
22
   __IEEE_BIG_ENDIAN
22
   __IEEE_BIG_ENDIAN
23
 
23
 
24
        Defined if the float format is big endian.  This is mutually exclusive
24
        Defined if the float format is big endian.  This is mutually exclusive
25
        with __IEEE_LITTLE_ENDIAN.
25
        with __IEEE_LITTLE_ENDIAN.
26
 
26
 
27
   __IEEE_LITTLE_ENDIAN
27
   __IEEE_LITTLE_ENDIAN
28
 
28
 
29
        Defined if the float format is little endian.  This is mutually exclusive
29
        Defined if the float format is little endian.  This is mutually exclusive
30
        with __IEEE_BIG_ENDIAN.
30
        with __IEEE_BIG_ENDIAN.
31
 
31
 
32
   Note that one of __IEEE_BIG_ENDIAN or __IEEE_LITTLE_ENDIAN must be specified for a
32
   Note that one of __IEEE_BIG_ENDIAN or __IEEE_LITTLE_ENDIAN must be specified for a
33
   platform or error will occur.
33
   platform or error will occur.
34
 
34
 
35
   __IEEE_BYTES_LITTLE_ENDIAN
35
   __IEEE_BYTES_LITTLE_ENDIAN
36
 
36
 
37
        This flag is used in conjunction with __IEEE_BIG_ENDIAN to describe a situation 
37
        This flag is used in conjunction with __IEEE_BIG_ENDIAN to describe a situation 
38
	whereby multiple words of an IEEE floating point are in big endian order, but the
38
	whereby multiple words of an IEEE floating point are in big endian order, but the
39
	words themselves are little endian with respect to the bytes.
39
	words themselves are little endian with respect to the bytes.
40
 
40
 
41
   _DOUBLE_IS_32BITS 
41
   _DOUBLE_IS_32BITS 
42
 
42
 
43
        This is used on platforms that support double by using the 32-bit IEEE
43
        This is used on platforms that support double by using the 32-bit IEEE
44
        float type.
44
        float type.
45
 
45
 
46
   _FLOAT_ARG
46
   _FLOAT_ARG
47
 
47
 
48
        This represents what type a float arg is passed as.  It is used when the type is
48
        This represents what type a float arg is passed as.  It is used when the type is
49
        not promoted to double.
49
        not promoted to double.
50
	
50
	
51
*/
51
*/
52
 
52
 
53
#if (defined(__arm__) || defined(__thumb__)) && !defined(__MAVERICK__)
53
#if (defined(__arm__) || defined(__thumb__)) && !defined(__MAVERICK__)
54
/* ARM traditionally used big-endian words; and within those words the
54
/* ARM traditionally used big-endian words; and within those words the
55
   byte ordering was big or little endian depending upon the target.
55
   byte ordering was big or little endian depending upon the target.
56
   Modern floating-point formats are naturally ordered; in this case
56
   Modern floating-point formats are naturally ordered; in this case
57
   __VFP_FP__ will be defined, even if soft-float.  */
57
   __VFP_FP__ will be defined, even if soft-float.  */
58
#ifdef __VFP_FP__
58
#ifdef __VFP_FP__
59
# ifdef __ARMEL__
59
# ifdef __ARMEL__
60
#  define __IEEE_LITTLE_ENDIAN
60
#  define __IEEE_LITTLE_ENDIAN
61
# else
61
# else
62
#  define __IEEE_BIG_ENDIAN
62
#  define __IEEE_BIG_ENDIAN
63
# endif
63
# endif
64
#else
64
#else
65
# define __IEEE_BIG_ENDIAN
65
# define __IEEE_BIG_ENDIAN
66
# ifdef __ARMEL__
66
# ifdef __ARMEL__
67
#  define __IEEE_BYTES_LITTLE_ENDIAN
67
#  define __IEEE_BYTES_LITTLE_ENDIAN
68
# endif
68
# endif
69
#endif
69
#endif
70
#endif
70
#endif
-
 
71
 
-
 
72
#if defined (__aarch64__)
-
 
73
#if defined (__AARCH64EL__)
-
 
74
#define __IEEE_LITTLE_ENDIAN
-
 
75
#else
-
 
76
#define __IEEE_BIG_ENDIAN
-
 
77
#endif
-
 
78
#endif
-
 
79
 
-
 
80
#ifdef __epiphany__
-
 
81
#define __IEEE_LITTLE_ENDIAN
-
 
82
#define Sudden_Underflow 1
-
 
83
#endif
71
 
84
 
72
#ifdef __hppa__
85
#ifdef __hppa__
73
#define __IEEE_BIG_ENDIAN
86
#define __IEEE_BIG_ENDIAN
74
#endif
87
#endif
-
 
88
 
-
 
89
#ifdef __nds32__
-
 
90
#ifdef __big_endian__
-
 
91
#define __IEEE_BIG_ENDIAN
-
 
92
#else
-
 
93
#define __IEEE_LITTLE_ENDIAN
-
 
94
#endif
-
 
95
#endif
75
 
96
 
76
#ifdef __SPU__
97
#ifdef __SPU__
77
#define __IEEE_BIG_ENDIAN
98
#define __IEEE_BIG_ENDIAN
78
 
99
 
79
#define isfinite(__y) \
100
#define isfinite(__y) \
80
	(__extension__ ({int __cy; \
101
	(__extension__ ({int __cy; \
81
                           (sizeof (__y) == sizeof (float))  ? (1) : \
102
                           (sizeof (__y) == sizeof (float))  ? (1) : \
82
		(__cy = fpclassify(__y)) != FP_INFINITE && __cy != FP_NAN;}))
103
		(__cy = fpclassify(__y)) != FP_INFINITE && __cy != FP_NAN;}))
83
 
104
 
84
#define isinf(__x) ((sizeof (__x) == sizeof (float))  ?  (0) : __isinfd(__x))
105
#define isinf(__x) ((sizeof (__x) == sizeof (float))  ?  (0) : __isinfd(__x))
85
#define isnan(__x) ((sizeof (__x) == sizeof (float))  ?  (0) : __isnand(__x))
106
#define isnan(__x) ((sizeof (__x) == sizeof (float))  ?  (0) : __isnand(__x))
86
 
107
 
87
/*
108
/*
88
 * Macros for use in ieeefp.h. We can't just define the real ones here
109
 * Macros for use in ieeefp.h. We can't just define the real ones here
89
 * (like those above) as we have name space issues when this is *not*
110
 * (like those above) as we have name space issues when this is *not*
90
 * included via generic the ieeefp.h.
111
 * included via generic the ieeefp.h.
91
 */
112
 */
92
#define __ieeefp_isnanf(x)	0
113
#define __ieeefp_isnanf(x)	0
93
#define __ieeefp_isinff(x)	0
114
#define __ieeefp_isinff(x)	0
94
#define __ieeefp_finitef(x)	1
115
#define __ieeefp_finitef(x)	1
95
#endif
116
#endif
96
 
117
 
97
#ifdef __sparc__
118
#ifdef __sparc__
98
#ifdef __LITTLE_ENDIAN_DATA__
119
#ifdef __LITTLE_ENDIAN_DATA__
99
#define __IEEE_LITTLE_ENDIAN
120
#define __IEEE_LITTLE_ENDIAN
100
#else
121
#else
101
#define __IEEE_BIG_ENDIAN
122
#define __IEEE_BIG_ENDIAN
102
#endif
123
#endif
103
#endif
124
#endif
104
 
125
 
105
#if defined(__m68k__) || defined(__mc68000__)
126
#if defined(__m68k__) || defined(__mc68000__)
106
#define __IEEE_BIG_ENDIAN
127
#define __IEEE_BIG_ENDIAN
107
#endif
128
#endif
108
 
129
 
109
#if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__)
130
#if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__)
110
#define __IEEE_BIG_ENDIAN
131
#define __IEEE_BIG_ENDIAN
111
#ifdef __HAVE_SHORT_DOUBLE__
132
#ifdef __HAVE_SHORT_DOUBLE__
112
# define _DOUBLE_IS_32BITS
133
# define _DOUBLE_IS_32BITS
113
#endif
134
#endif
114
#endif
135
#endif
115
 
136
 
116
#if defined (__H8300__) || defined (__H8300H__) || defined (__H8300S__) || defined (__H8500__) || defined (__H8300SX__)
137
#if defined (__H8300__) || defined (__H8300H__) || defined (__H8300S__) || defined (__H8500__) || defined (__H8300SX__)
117
#define __IEEE_BIG_ENDIAN
138
#define __IEEE_BIG_ENDIAN
118
#define _FLOAT_ARG float
139
#define _FLOAT_ARG float
119
#define _DOUBLE_IS_32BITS
140
#define _DOUBLE_IS_32BITS
120
#endif
141
#endif
121
 
142
 
122
#if defined (__xc16x__) || defined (__xc16xL__) || defined (__xc16xS__)
143
#if defined (__xc16x__) || defined (__xc16xL__) || defined (__xc16xS__)
123
#define __IEEE_LITTLE_ENDIAN
144
#define __IEEE_LITTLE_ENDIAN
124
#define _FLOAT_ARG float
145
#define _FLOAT_ARG float
125
#define _DOUBLE_IS_32BITS
146
#define _DOUBLE_IS_32BITS
126
#endif
147
#endif
127
 
148
 
128
 
149
 
129
#ifdef __sh__
150
#ifdef __sh__
130
#ifdef __LITTLE_ENDIAN__
151
#ifdef __LITTLE_ENDIAN__
131
#define __IEEE_LITTLE_ENDIAN
152
#define __IEEE_LITTLE_ENDIAN
132
#else
153
#else
133
#define __IEEE_BIG_ENDIAN
154
#define __IEEE_BIG_ENDIAN
134
#endif
155
#endif
135
#if defined(__SH2E__) || defined(__SH3E__) || defined(__SH4_SINGLE_ONLY__) || defined(__SH2A_SINGLE_ONLY__)
156
#if defined(__SH2E__) || defined(__SH3E__) || defined(__SH4_SINGLE_ONLY__) || defined(__SH2A_SINGLE_ONLY__)
136
#define _DOUBLE_IS_32BITS
157
#define _DOUBLE_IS_32BITS
137
#endif
158
#endif
138
#endif
159
#endif
139
 
160
 
140
#ifdef _AM29K
161
#ifdef _AM29K
141
#define __IEEE_BIG_ENDIAN
162
#define __IEEE_BIG_ENDIAN
142
#endif
163
#endif
143
 
164
 
144
#ifdef _WIN32
165
#ifdef _WIN32
145
#define __IEEE_LITTLE_ENDIAN
166
#define __IEEE_LITTLE_ENDIAN
146
#endif
167
#endif
147
 
168
 
148
#ifdef __i386__
169
#ifdef __i386__
149
#define __IEEE_LITTLE_ENDIAN
170
#define __IEEE_LITTLE_ENDIAN
150
#endif
171
#endif
151
 
172
 
152
#ifdef __i960__
173
#ifdef __i960__
153
#define __IEEE_LITTLE_ENDIAN
174
#define __IEEE_LITTLE_ENDIAN
154
#endif
175
#endif
155
 
176
 
156
#ifdef __lm32__
177
#ifdef __lm32__
157
#define __IEEE_BIG_ENDIAN
178
#define __IEEE_BIG_ENDIAN
158
#endif
179
#endif
159
 
180
 
160
#ifdef __M32R__
181
#ifdef __M32R__
161
#define __IEEE_BIG_ENDIAN
182
#define __IEEE_BIG_ENDIAN
162
#endif
183
#endif
163
 
184
 
164
#if defined(_C4x) || defined(_C3x)
185
#if defined(_C4x) || defined(_C3x)
165
#define __IEEE_BIG_ENDIAN
186
#define __IEEE_BIG_ENDIAN
166
#define _DOUBLE_IS_32BITS
187
#define _DOUBLE_IS_32BITS
167
#endif
188
#endif
168
 
189
 
169
#ifdef __TMS320C6X__
190
#ifdef __TMS320C6X__
170
#ifdef _BIG_ENDIAN
191
#ifdef _BIG_ENDIAN
171
#define __IEEE_BIG_ENDIAN
192
#define __IEEE_BIG_ENDIAN
172
#else
193
#else
173
#define __IEEE_LITTLE_ENDIAN
194
#define __IEEE_LITTLE_ENDIAN
174
#endif
195
#endif
175
#endif
196
#endif
176
 
197
 
177
#ifdef __TIC80__
198
#ifdef __TIC80__
178
#define __IEEE_LITTLE_ENDIAN
199
#define __IEEE_LITTLE_ENDIAN
179
#endif
200
#endif
180
 
201
 
181
#ifdef __MIPSEL__
202
#ifdef __MIPSEL__
182
#define __IEEE_LITTLE_ENDIAN
203
#define __IEEE_LITTLE_ENDIAN
183
#endif
204
#endif
184
#ifdef __MIPSEB__
205
#ifdef __MIPSEB__
185
#define __IEEE_BIG_ENDIAN
206
#define __IEEE_BIG_ENDIAN
186
#endif
207
#endif
187
 
208
 
188
#ifdef __MMIX__
209
#ifdef __MMIX__
189
#define __IEEE_BIG_ENDIAN
210
#define __IEEE_BIG_ENDIAN
190
#endif
211
#endif
191
 
212
 
192
#ifdef __D30V__
213
#ifdef __D30V__
193
#define __IEEE_BIG_ENDIAN
214
#define __IEEE_BIG_ENDIAN
194
#endif
215
#endif
195
 
216
 
196
/* necv70 was __IEEE_LITTLE_ENDIAN. */
217
/* necv70 was __IEEE_LITTLE_ENDIAN. */
197
 
218
 
198
#ifdef __W65__
219
#ifdef __W65__
199
#define __IEEE_LITTLE_ENDIAN
220
#define __IEEE_LITTLE_ENDIAN
200
#define _DOUBLE_IS_32BITS
221
#define _DOUBLE_IS_32BITS
201
#endif
222
#endif
202
 
223
 
203
#if defined(__Z8001__) || defined(__Z8002__)
224
#if defined(__Z8001__) || defined(__Z8002__)
204
#define __IEEE_BIG_ENDIAN
225
#define __IEEE_BIG_ENDIAN
205
#endif
226
#endif
206
 
227
 
207
#ifdef __m88k__
228
#ifdef __m88k__
208
#define __IEEE_BIG_ENDIAN
229
#define __IEEE_BIG_ENDIAN
209
#endif
230
#endif
210
 
231
 
211
#ifdef __mn10300__
232
#ifdef __mn10300__
212
#define __IEEE_LITTLE_ENDIAN
233
#define __IEEE_LITTLE_ENDIAN
213
#endif
234
#endif
214
 
235
 
215
#ifdef __mn10200__
236
#ifdef __mn10200__
216
#define __IEEE_LITTLE_ENDIAN
237
#define __IEEE_LITTLE_ENDIAN
217
#define _DOUBLE_IS_32BITS
238
#define _DOUBLE_IS_32BITS
218
#endif
239
#endif
219
 
240
 
220
#ifdef __v800
241
#ifdef __v800
221
#define __IEEE_LITTLE_ENDIAN
242
#define __IEEE_LITTLE_ENDIAN
222
#endif
243
#endif
223
 
244
 
224
#ifdef __v850
245
#ifdef __v850
225
#define __IEEE_LITTLE_ENDIAN
246
#define __IEEE_LITTLE_ENDIAN
226
#endif
247
#endif
227
 
248
 
228
#ifdef __D10V__
249
#ifdef __D10V__
229
#define __IEEE_BIG_ENDIAN
250
#define __IEEE_BIG_ENDIAN
230
#if __DOUBLE__ == 32
251
#if __DOUBLE__ == 32
231
#define _DOUBLE_IS_32BITS
252
#define _DOUBLE_IS_32BITS
232
#endif
253
#endif
233
#endif
254
#endif
234
 
255
 
235
#ifdef __PPC__
256
#ifdef __PPC__
236
#if (defined(_BIG_ENDIAN) && _BIG_ENDIAN) || (defined(_AIX) && _AIX)
257
#if (defined(_BIG_ENDIAN) && _BIG_ENDIAN) || (defined(_AIX) && _AIX)
237
#define __IEEE_BIG_ENDIAN
258
#define __IEEE_BIG_ENDIAN
238
#else
259
#else
239
#if (defined(_LITTLE_ENDIAN) && _LITTLE_ENDIAN) || (defined(__sun__) && __sun__) || (defined(_WIN32) && _WIN32)
260
#if (defined(_LITTLE_ENDIAN) && _LITTLE_ENDIAN) || (defined(__sun__) && __sun__) || (defined(_WIN32) && _WIN32)
240
#define __IEEE_LITTLE_ENDIAN
261
#define __IEEE_LITTLE_ENDIAN
241
#endif
262
#endif
242
#endif
263
#endif
243
#endif
264
#endif
244
 
265
 
245
#ifdef __xstormy16__
266
#ifdef __xstormy16__
246
#define __IEEE_LITTLE_ENDIAN
267
#define __IEEE_LITTLE_ENDIAN
247
#endif
268
#endif
248
 
269
 
249
#ifdef __arc__
270
#ifdef __arc__
250
#ifdef __big_endian__
271
#ifdef __big_endian__
251
#define __IEEE_BIG_ENDIAN
272
#define __IEEE_BIG_ENDIAN
252
#else
273
#else
253
#define __IEEE_LITTLE_ENDIAN
274
#define __IEEE_LITTLE_ENDIAN
254
#endif
275
#endif
255
#endif
276
#endif
256
 
277
 
257
#ifdef __CRX__
278
#ifdef __CRX__
258
#define __IEEE_LITTLE_ENDIAN
279
#define __IEEE_LITTLE_ENDIAN
259
#endif
280
#endif
260
 
281
 
261
#ifdef __fr30__
282
#ifdef __fr30__
262
#define __IEEE_BIG_ENDIAN
283
#define __IEEE_BIG_ENDIAN
263
#endif
284
#endif
264
 
285
 
265
#ifdef __mcore__
286
#ifdef __mcore__
266
#define __IEEE_BIG_ENDIAN
287
#define __IEEE_BIG_ENDIAN
267
#endif
288
#endif
268
 
289
 
269
#ifdef __mt__
290
#ifdef __mt__
270
#define __IEEE_BIG_ENDIAN
291
#define __IEEE_BIG_ENDIAN
271
#endif
292
#endif
272
 
293
 
273
#ifdef __frv__
294
#ifdef __frv__
274
#define __IEEE_BIG_ENDIAN
295
#define __IEEE_BIG_ENDIAN
275
#endif
296
#endif
276
 
297
 
277
#ifdef __moxie__
298
#ifdef __moxie__
-
 
299
#ifdef __MOXIE_BIG_ENDIAN__
278
#define __IEEE_BIG_ENDIAN
300
#define __IEEE_BIG_ENDIAN
-
 
301
#else
-
 
302
#define __IEEE_LITTLE_ENDIAN
-
 
303
#endif
279
#endif
304
#endif
280
 
305
 
281
#ifdef __ia64__
306
#ifdef __ia64__
282
#ifdef __BIG_ENDIAN__
307
#ifdef __BIG_ENDIAN__
283
#define __IEEE_BIG_ENDIAN
308
#define __IEEE_BIG_ENDIAN
284
#else
309
#else
285
#define __IEEE_LITTLE_ENDIAN
310
#define __IEEE_LITTLE_ENDIAN
286
#endif
311
#endif
287
#endif
312
#endif
288
 
313
 
289
#ifdef __AVR__
314
#ifdef __AVR__
290
#define __IEEE_LITTLE_ENDIAN
315
#define __IEEE_LITTLE_ENDIAN
291
#define _DOUBLE_IS_32BITS
316
#define _DOUBLE_IS_32BITS
292
#endif
317
#endif
293
 
318
 
294
#if defined(__or32__) || defined(__or1k__) || defined(__or16__)
319
#if defined(__or32__) || defined(__or1k__) || defined(__or16__)
295
#define __IEEE_BIG_ENDIAN
320
#define __IEEE_BIG_ENDIAN
296
#endif
321
#endif
297
 
322
 
298
#ifdef __IP2K__
323
#ifdef __IP2K__
299
#define __IEEE_BIG_ENDIAN
324
#define __IEEE_BIG_ENDIAN
300
#define __SMALL_BITFIELDS
325
#define __SMALL_BITFIELDS
301
#define _DOUBLE_IS_32BITS
326
#define _DOUBLE_IS_32BITS
302
#endif
327
#endif
303
 
328
 
304
#ifdef __iq2000__
329
#ifdef __iq2000__
305
#define __IEEE_BIG_ENDIAN
330
#define __IEEE_BIG_ENDIAN
306
#endif
331
#endif
307
 
332
 
308
#ifdef __MAVERICK__
333
#ifdef __MAVERICK__
309
#ifdef __ARMEL__
334
#ifdef __ARMEL__
310
#  define __IEEE_LITTLE_ENDIAN
335
#  define __IEEE_LITTLE_ENDIAN
311
#else  /* must be __ARMEB__ */
336
#else  /* must be __ARMEB__ */
312
#  define __IEEE_BIG_ENDIAN
337
#  define __IEEE_BIG_ENDIAN
313
#endif /* __ARMEL__ */
338
#endif /* __ARMEL__ */
314
#endif /* __MAVERICK__ */
339
#endif /* __MAVERICK__ */
315
 
340
 
316
#ifdef __m32c__
341
#ifdef __m32c__
317
#define __IEEE_LITTLE_ENDIAN
342
#define __IEEE_LITTLE_ENDIAN
318
#define __SMALL_BITFIELDS
343
#define __SMALL_BITFIELDS
319
#endif
344
#endif
320
 
345
 
321
#ifdef __CRIS__
346
#ifdef __CRIS__
322
#define __IEEE_LITTLE_ENDIAN
347
#define __IEEE_LITTLE_ENDIAN
323
#endif
348
#endif
324
 
349
 
325
#ifdef __BFIN__
350
#ifdef __BFIN__
326
#define __IEEE_LITTLE_ENDIAN
351
#define __IEEE_LITTLE_ENDIAN
327
#endif
352
#endif
328
 
353
 
329
#ifdef __x86_64__
354
#ifdef __x86_64__
330
#define __IEEE_LITTLE_ENDIAN
355
#define __IEEE_LITTLE_ENDIAN
331
#endif
356
#endif
332
 
357
 
333
#ifdef __mep__
358
#ifdef __mep__
334
#ifdef __LITTLE_ENDIAN__
359
#ifdef __LITTLE_ENDIAN__
335
#define __IEEE_LITTLE_ENDIAN
360
#define __IEEE_LITTLE_ENDIAN
336
#else
361
#else
337
#define __IEEE_BIG_ENDIAN
362
#define __IEEE_BIG_ENDIAN
338
#endif
363
#endif
339
#endif
364
#endif
340
 
365
 
341
#ifdef __MICROBLAZE__
366
#ifdef __MICROBLAZE__
-
 
367
#ifndef __MICROBLAZEEL__
342
#define __IEEE_BIG_ENDIAN
368
#define __IEEE_BIG_ENDIAN
-
 
369
#else
-
 
370
#define __IEEE_LITTLE_ENDIAN
-
 
371
#endif
-
 
372
#endif
-
 
373
 
-
 
374
#ifdef __MSP430__
-
 
375
#define __IEEE_LITTLE_ENDIAN
-
 
376
#define __SMALL_BITFIELDS	/* 16 Bit INT */
343
#endif
377
#endif
344
 
378
 
345
#ifdef __RL78__
379
#ifdef __RL78__
346
#define __IEEE_LITTLE_ENDIAN
380
#define __IEEE_LITTLE_ENDIAN
347
#define __SMALL_BITFIELDS	/* 16 Bit INT */
381
#define __SMALL_BITFIELDS	/* 16 Bit INT */
348
#define _DOUBLE_IS_32BITS
382
#define _DOUBLE_IS_32BITS
349
#endif
383
#endif
350
 
384
 
351
#ifdef __RX__
385
#ifdef __RX__
352
 
386
 
353
#ifdef __RX_BIG_ENDIAN__
387
#ifdef __RX_BIG_ENDIAN__
354
#define __IEEE_BIG_ENDIAN
388
#define __IEEE_BIG_ENDIAN
355
#else
389
#else
356
#define __IEEE_LITTLE_ENDIAN
390
#define __IEEE_LITTLE_ENDIAN
357
#endif
391
#endif
358
 
392
 
359
#ifndef __RX_64BIT_DOUBLES__
393
#ifndef __RX_64BIT_DOUBLES__
360
#define _DOUBLE_IS_32BITS
394
#define _DOUBLE_IS_32BITS
361
#endif
395
#endif
362
 
396
 
363
#ifdef __RX_16BIT_INTS__
397
#ifdef __RX_16BIT_INTS__
364
#define __SMALL_BITFIELDS
398
#define __SMALL_BITFIELDS
365
#endif
399
#endif
366
 
400
 
367
#endif
401
#endif
368
 
402
 
369
#if (defined(__CR16__) || defined(__CR16C__) ||defined(__CR16CP__))
403
#if (defined(__CR16__) || defined(__CR16C__) ||defined(__CR16CP__))
370
#define __IEEE_LITTLE_ENDIAN
404
#define __IEEE_LITTLE_ENDIAN
371
#define __SMALL_BITFIELDS	/* 16 Bit INT */
405
#define __SMALL_BITFIELDS	/* 16 Bit INT */
372
#endif
406
#endif
-
 
407
 
-
 
408
#ifdef __NIOS2__
-
 
409
# ifdef __nios2_big_endian__
-
 
410
#  define __IEEE_BIG_ENDIAN
-
 
411
# else
-
 
412
#  define __IEEE_LITTLE_ENDIAN
-
 
413
# endif
-
 
414
#endif
373
 
415
 
374
#ifndef __IEEE_BIG_ENDIAN
416
#ifndef __IEEE_BIG_ENDIAN
375
#ifndef __IEEE_LITTLE_ENDIAN
417
#ifndef __IEEE_LITTLE_ENDIAN
376
#error Endianess not declared!!
418
#error Endianess not declared!!
377
#endif /* not __IEEE_LITTLE_ENDIAN */
419
#endif /* not __IEEE_LITTLE_ENDIAN */
378
#endif /* not __IEEE_BIG_ENDIAN */
420
#endif /* not __IEEE_BIG_ENDIAN */
379
 
421
 
380
#endif /* not __IEEE_LITTLE_ENDIAN */
422
#endif /* not __IEEE_LITTLE_ENDIAN */
381
#endif /* not __IEEE_BIG_ENDIAN */
423
#endif /* not __IEEE_BIG_ENDIAN */