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

Subversion Repositories or1k

[/] [or1k/] [branches/] [newlib/] [newlib/] [newlib/] [libc/] [include/] [sys/] [config.h] - Blame information for rev 39

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 39 lampret
#ifndef __SYS_CONFIG_H__
2
#define __SYS_CONFIG_H__
3
 
4
/* exceptions first */
5
/* ??? Why is much of this stuff duplicated with machine/ieeefp.h?  */
6
#if defined(__H8300__) || defined(__H8500__) || defined (__H8300H__) ||  defined(__W65__) || defined (__H8300S__)
7
#define _FLOAT_ARG float
8
#define __SMALL_BITFIELDS
9
#define _DOUBLE_IS_32BITS
10
#define __IEEE_BIG_ENDIAN
11
/* ???  This conditional is true for the h8500 and the w65, defining H8300
12
   in those cases probably isn't the right thing to do.  */
13
#define H8300 1
14
#endif
15
 
16
#ifdef __W65__
17
#define _DOUBLE_IS_32BITS
18
#define __SMALL_BITFIELDS
19
#define __IEEE_BIG_ENDIAN
20
#undef INT_MAX
21
#undef UINT_MAX
22
#define INT_MAX 32767
23
#define UINT_MAX 65535
24
 
25
#endif
26
 
27
/* 16 bit integer machines */
28
#if defined(__Z8001__) || defined(__Z8002__) || defined(__H8300__) || defined(__H8500__) || defined(__W65__) || defined (__H8300H__) || defined (__H8300S__) || defined (__mn10200__)
29
 
30
#undef INT_MAX
31
#undef UINT_MAX
32
#define INT_MAX 32767
33
#define UINT_MAX 65535
34
#endif
35
 
36
#if defined(__D10V__)
37
#undef INT_MAX
38
#undef UINT_MAX
39
#define INT_MAX __INT_MAX__
40
#define UINT_MAX (__INT_MAX__ * 2U + 1)
41
#define _DOUBLE_IS_32BITS
42
#define _POINTER_INT short
43
#define __IEEE_BIG_ENDIAN
44
#endif
45
 
46
#ifdef ___AM29K__
47
#define _FLOAT_RET double
48
#endif
49
 
50
#ifdef __i386__
51
#ifndef __unix__
52
/* in other words, go32 */
53
#define _FLOAT_RET double
54
#endif
55
#endif
56
 
57
#ifdef __M32R__
58
#define __IEEE_BIG_ENDIAN
59
#endif
60
 
61
#ifdef __m68k__
62
/* This is defined in machine/ieeefp.h; need to check is it redundant here? */
63
#define __IEEE_BIG_ENDIAN
64
#endif
65
 
66
#ifdef __mn10300__
67
#define __IEEE_LITTLE_ENDIAN
68
#endif
69
 
70
#ifdef __mn10200__
71
#define _DOUBLE_IS_32BITS
72
#define __SMALL_BITFIELDS
73
#define __IEEE_LITTLE_ENDIAN
74
#endif
75
 
76
 
77
#ifdef __v850
78
#define __IEEE_LITTLE_ENDIAN
79
#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__sda__))
80
#endif
81
 
82
 
83
/* For the PowerPC eabi, force the _impure_ptr to be in .sdata */
84
#if defined(__PPC__) && defined(_CALL_SYSV)
85
#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata")))
86
#endif
87
 
88
#if INT_MAX == 32767
89
typedef long int __int32_t;
90
typedef unsigned long int __uint32_t;
91
#else
92
typedef int __int32_t;
93
typedef unsigned int __uint32_t;
94
#endif
95
 
96
#ifndef _POINTER_INT
97
#define _POINTER_INT long
98
#endif
99
 
100
#endif /* __SYS_CONFIG_H__ */

powered by: WebSVN 2.1.0

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