OpenCores
URL https://opencores.org/ocsvn/altor32/altor32/trunk

Subversion Repositories altor32

[/] [altor32/] [trunk/] [gcc-x64/] [or1knd-elf/] [or1knd-elf/] [include/] [sys/] [config.h] - Blame information for rev 35

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 35 ultra_embe
#ifndef __SYS_CONFIG_H__
2
#define __SYS_CONFIG_H__
3
 
4
#include <machine/ieeefp.h>  /* floating point macros */
5
#include <sys/features.h>       /* POSIX defs */
6
 
7
#ifdef __aarch64__
8
#define MALLOC_ALIGNMENT 16
9
#endif
10
 
11
/* exceptions first */
12
#if defined(__H8500__) || defined(__W65__)
13
#define __SMALL_BITFIELDS
14
/* ???  This conditional is true for the h8500 and the w65, defining H8300
15
   in those cases probably isn't the right thing to do.  */
16
#define H8300 1
17
#endif
18
 
19
/* 16 bit integer machines */
20
#if defined(__Z8001__) || defined(__Z8002__) || defined(__H8500__) || defined(__W65__) || defined (__mn10200__) || defined (__AVR__)
21
 
22
#undef INT_MAX
23
#undef UINT_MAX
24
#define INT_MAX 32767
25
#define UINT_MAX 65535
26
#endif
27
 
28
#if defined (__H8300__) || defined (__H8300H__) || defined(__H8300S__) || defined (__H8300SX__)
29
#define __SMALL_BITFIELDS
30
#define H8300 1
31
#undef INT_MAX
32
#undef UINT_MAX
33
#define INT_MAX __INT_MAX__
34
#define UINT_MAX (__INT_MAX__ * 2U + 1)
35
#endif
36
 
37
#if (defined(__CR16__) || defined(__CR16C__) ||defined(__CR16CP__))
38
#ifndef __INT32__
39
#define __SMALL_BITFIELDS      
40
#undef INT_MAX
41
#undef UINT_MAX
42
#define INT_MAX 32767
43
#define UINT_MAX (__INT_MAX__ * 2U + 1)
44
#else /* INT32 */
45
#undef INT_MAX
46
#undef UINT_MAX
47
#define INT_MAX 2147483647
48
#define UINT_MAX (__INT_MAX__ * 2U + 1)
49
#endif /* INT32 */
50
 
51
#endif /* CR16C */
52
 
53
#if defined (__xc16x__) || defined (__xc16xL__) || defined (__xc16xS__)
54
#define __SMALL_BITFIELDS
55
#endif
56
 
57
#ifdef __W65__
58
#define __SMALL_BITFIELDS
59
#endif
60
 
61
#if defined(__D10V__)
62
#define __SMALL_BITFIELDS
63
#undef INT_MAX
64
#undef UINT_MAX
65
#define INT_MAX __INT_MAX__
66
#define UINT_MAX (__INT_MAX__ * 2U + 1)
67
#define _POINTER_INT short
68
#endif
69
 
70
#if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__)
71
#undef INT_MAX
72
#undef UINT_MAX
73
#define INT_MAX __INT_MAX__
74
#define UINT_MAX (__INT_MAX__ * 2U + 1)
75
#define _POINTER_INT short
76
#endif
77
 
78
#ifdef ___AM29K__
79
#define _FLOAT_RET double
80
#endif
81
 
82
#ifdef __i386__
83
#ifndef __unix__
84
/* in other words, go32 */
85
#define _FLOAT_RET double
86
#endif
87
#if defined(__linux__) || defined(__RDOS__)
88
/* we want the reentrancy structure to be returned by a function */
89
#define __DYNAMIC_REENT__
90
#define HAVE_GETDATE
91
#define _HAVE_SYSTYPES
92
#define _READ_WRITE_RETURN_TYPE _ssize_t
93
#define __LARGE64_FILES 1
94
/* we use some glibc header files so turn on glibc large file feature */
95
#define _LARGEFILE64_SOURCE 1
96
#endif
97
#endif
98
 
99
#ifdef __mn10200__
100
#define __SMALL_BITFIELDS
101
#endif
102
 
103
#ifdef __AVR__
104
#define __SMALL_BITFIELDS
105
#define _POINTER_INT short
106
#endif
107
 
108
#ifdef __v850
109
#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__sda__))
110
#endif
111
 
112
/* For the PowerPC eabi, force the _impure_ptr to be in .sdata */
113
#if defined(__PPC__)
114
#if defined(_CALL_SYSV)
115
#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata")))
116
#endif
117
#ifdef __SPE__
118
#define _LONG_DOUBLE double
119
#endif
120
#endif
121
 
122
/* Configure small REENT structure for Xilinx MicroBlaze platforms */
123
#if defined (__MICROBLAZE__)
124
#ifndef _REENT_SMALL
125
#define _REENT_SMALL
126
#endif
127
/* Xilinx XMK uses Unix98 mutex */
128
#ifdef __XMK__
129
#define _UNIX98_THREAD_MUTEX_ATTRIBUTES
130
#endif
131
#endif
132
 
133
#if defined(__mips__) && !defined(__rtems__)
134
#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata")))
135
#endif
136
 
137
#ifdef __xstormy16__
138
#define __SMALL_BITFIELDS
139
#undef INT_MAX
140
#undef UINT_MAX
141
#define INT_MAX __INT_MAX__
142
#define UINT_MAX (__INT_MAX__ * 2U + 1)
143
#define MALLOC_ALIGNMENT 8
144
#define _POINTER_INT short
145
#define __BUFSIZ__ 16
146
#define _REENT_SMALL
147
#endif
148
#ifdef __m32c__
149
#define __SMALL_BITFIELDS
150
#undef INT_MAX
151
#undef UINT_MAX
152
#define INT_MAX __INT_MAX__
153
#define UINT_MAX (__INT_MAX__ * 2U + 1)
154
#define MALLOC_ALIGNMENT 8
155
#if defined(__r8c_cpu__) || defined(__m16c_cpu__)
156
#define _POINTER_INT short
157
#else
158
#define _POINTER_INT long
159
#endif
160
#define __BUFSIZ__ 16
161
#define _REENT_SMALL
162
#endif /* __m32c__ */
163
 
164
#ifdef __SPU__
165
#define MALLOC_ALIGNMENT 16
166
#define __CUSTOM_FILE_IO__
167
#endif
168
 
169
/* This block should be kept in sync with GCC's limits.h.  The point
170
   of having these definitions here is to not include limits.h, which
171
   would pollute the user namespace, while still using types of the
172
   the correct widths when deciding how to define __int32_t and
173
   __int64_t.  */
174
#ifndef __INT_MAX__
175
# ifdef INT_MAX
176
#  define __INT_MAX__ INT_MAX
177
# else
178
#  define __INT_MAX__ 2147483647
179
# endif
180
#endif
181
 
182
#ifndef __LONG_MAX__
183
# ifdef LONG_MAX
184
#  define __LONG_MAX__ LONG_MAX
185
# else
186
#  if defined (__alpha__) || (defined (__sparc__) && defined(__arch64__)) \
187
      || defined (__sparcv9)
188
#   define __LONG_MAX__ 9223372036854775807L
189
#  else
190
#   define __LONG_MAX__ 2147483647L
191
#  endif /* __alpha__ || sparc64 */
192
# endif
193
#endif
194
/* End of block that should be kept in sync with GCC's limits.h.  */
195
 
196
#ifndef _POINTER_INT
197
#define _POINTER_INT long
198
#endif
199
 
200
#ifdef __frv__
201
#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata")))
202
#endif
203
#undef __RAND_MAX
204
#if __INT_MAX__ == 32767
205
#define __RAND_MAX 32767
206
#else
207
#define __RAND_MAX 0x7fffffff
208
#endif
209
 
210
#if defined(__CYGWIN__)
211
#include <cygwin/config.h>
212
#if !defined (__STRICT_ANSI__) || (__STDC_VERSION__ >= 199901L)
213
#define __USE_XOPEN2K 1
214
#endif
215
#endif
216
 
217
#if defined(__rtems__)
218
#define __FILENAME_MAX__ 255
219
#define _READ_WRITE_RETURN_TYPE _ssize_t
220
#endif
221
 
222
#ifndef __EXPORT
223
#define __EXPORT
224
#endif
225
 
226
#ifndef __IMPORT
227
#define __IMPORT
228
#endif
229
 
230
/* Define return type of read/write routines.  In POSIX, the return type
231
   for read()/write() is "ssize_t" but legacy newlib code has been using
232
   "int" for some time.  If not specified, "int" is defaulted.  */
233
#ifndef _READ_WRITE_RETURN_TYPE
234
#define _READ_WRITE_RETURN_TYPE int
235
#endif
236
 
237
#ifndef __WCHAR_MAX__
238
#if __INT_MAX__ == 32767 || defined (_WIN32)
239
#define __WCHAR_MAX__ 0xffffu
240
#endif
241
#endif
242
 
243
/* See if small reent asked for at configuration time and
244
   is not chosen by the platform by default.  */
245
#ifdef _WANT_REENT_SMALL
246
#ifndef _REENT_SMALL
247
#define _REENT_SMALL
248
#endif
249
#endif
250
 
251
/* If _MB_EXTENDED_CHARSETS_ALL is set, we want all of the extended
252
   charsets.  The extended charsets add a few functions and a couple
253
   of tables of a few K each. */
254
#ifdef _MB_EXTENDED_CHARSETS_ALL
255
#define _MB_EXTENDED_CHARSETS_ISO 1
256
#define _MB_EXTENDED_CHARSETS_WINDOWS 1
257
#endif
258
 
259
#endif /* __SYS_CONFIG_H__ */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.