xref: /dflybsd-src/contrib/gcc-4.7/gcc/ginclude/stdfix.h (revision 04febcfb30580676d3e95f58a16c5137ee478b32)
1*e4b17023SJohn Marino /* Copyright (C) 2007, 2009 Free Software Foundation, Inc.
2*e4b17023SJohn Marino 
3*e4b17023SJohn Marino This file is part of GCC.
4*e4b17023SJohn Marino 
5*e4b17023SJohn Marino GCC is free software; you can redistribute it and/or modify
6*e4b17023SJohn Marino it under the terms of the GNU General Public License as published by
7*e4b17023SJohn Marino the Free Software Foundation; either version 3, or (at your option)
8*e4b17023SJohn Marino any later version.
9*e4b17023SJohn Marino 
10*e4b17023SJohn Marino GCC is distributed in the hope that it will be useful,
11*e4b17023SJohn Marino but WITHOUT ANY WARRANTY; without even the implied warranty of
12*e4b17023SJohn Marino MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13*e4b17023SJohn Marino GNU General Public License for more details.
14*e4b17023SJohn Marino 
15*e4b17023SJohn Marino Under Section 7 of GPL version 3, you are granted additional
16*e4b17023SJohn Marino permissions described in the GCC Runtime Library Exception, version
17*e4b17023SJohn Marino 3.1, as published by the Free Software Foundation.
18*e4b17023SJohn Marino 
19*e4b17023SJohn Marino You should have received a copy of the GNU General Public License and
20*e4b17023SJohn Marino a copy of the GCC Runtime Library Exception along with this program;
21*e4b17023SJohn Marino see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
22*e4b17023SJohn Marino <http://www.gnu.org/licenses/>.  */
23*e4b17023SJohn Marino 
24*e4b17023SJohn Marino /* ISO/IEC JTC1 SC22 WG14 N1169
25*e4b17023SJohn Marino  * Date: 2006-04-04
26*e4b17023SJohn Marino  * ISO/IEC TR 18037
27*e4b17023SJohn Marino  * Programming languages - C - Extensions to support embedded processors
28*e4b17023SJohn Marino  */
29*e4b17023SJohn Marino 
30*e4b17023SJohn Marino #ifndef _STDFIX_H
31*e4b17023SJohn Marino #define _STDFIX_H
32*e4b17023SJohn Marino 
33*e4b17023SJohn Marino /* 7.18a.1 Introduction.  */
34*e4b17023SJohn Marino 
35*e4b17023SJohn Marino #undef fract
36*e4b17023SJohn Marino #undef accum
37*e4b17023SJohn Marino #undef sat
38*e4b17023SJohn Marino #define fract		_Fract
39*e4b17023SJohn Marino #define accum		_Accum
40*e4b17023SJohn Marino #define sat		_Sat
41*e4b17023SJohn Marino 
42*e4b17023SJohn Marino /* 7.18a.3 Precision macros.  */
43*e4b17023SJohn Marino 
44*e4b17023SJohn Marino #undef SFRACT_FBIT
45*e4b17023SJohn Marino #undef SFRACT_MIN
46*e4b17023SJohn Marino #undef SFRACT_MAX
47*e4b17023SJohn Marino #undef SFRACT_EPSILON
48*e4b17023SJohn Marino #define SFRACT_FBIT	__SFRACT_FBIT__
49*e4b17023SJohn Marino #define SFRACT_MIN	__SFRACT_MIN__
50*e4b17023SJohn Marino #define SFRACT_MAX	__SFRACT_MAX__
51*e4b17023SJohn Marino #define SFRACT_EPSILON	__SFRACT_EPSILON__
52*e4b17023SJohn Marino 
53*e4b17023SJohn Marino #undef USFRACT_FBIT
54*e4b17023SJohn Marino #undef USFRACT_MIN
55*e4b17023SJohn Marino #undef USFRACT_MAX
56*e4b17023SJohn Marino #undef USFRACT_EPSILON
57*e4b17023SJohn Marino #define USFRACT_FBIT	__USFRACT_FBIT__
58*e4b17023SJohn Marino #define USFRACT_MIN	__USFRACT_MIN__		/* GCC extension.  */
59*e4b17023SJohn Marino #define USFRACT_MAX	__USFRACT_MAX__
60*e4b17023SJohn Marino #define USFRACT_EPSILON	__USFRACT_EPSILON__
61*e4b17023SJohn Marino 
62*e4b17023SJohn Marino #undef FRACT_FBIT
63*e4b17023SJohn Marino #undef FRACT_MIN
64*e4b17023SJohn Marino #undef FRACT_MAX
65*e4b17023SJohn Marino #undef FRACT_EPSILON
66*e4b17023SJohn Marino #define FRACT_FBIT	__FRACT_FBIT__
67*e4b17023SJohn Marino #define FRACT_MIN	__FRACT_MIN__
68*e4b17023SJohn Marino #define FRACT_MAX	__FRACT_MAX__
69*e4b17023SJohn Marino #define FRACT_EPSILON	__FRACT_EPSILON__
70*e4b17023SJohn Marino 
71*e4b17023SJohn Marino #undef UFRACT_FBIT
72*e4b17023SJohn Marino #undef UFRACT_MIN
73*e4b17023SJohn Marino #undef UFRACT_MAX
74*e4b17023SJohn Marino #undef UFRACT_EPSILON
75*e4b17023SJohn Marino #define UFRACT_FBIT	__UFRACT_FBIT__
76*e4b17023SJohn Marino #define UFRACT_MIN	__UFRACT_MIN__		/* GCC extension.  */
77*e4b17023SJohn Marino #define UFRACT_MAX	__UFRACT_MAX__
78*e4b17023SJohn Marino #define UFRACT_EPSILON	__UFRACT_EPSILON__
79*e4b17023SJohn Marino 
80*e4b17023SJohn Marino #undef LFRACT_FBIT
81*e4b17023SJohn Marino #undef LFRACT_MIN
82*e4b17023SJohn Marino #undef LFRACT_MAX
83*e4b17023SJohn Marino #undef LFRACT_EPSILON
84*e4b17023SJohn Marino #define LFRACT_FBIT	__LFRACT_FBIT__
85*e4b17023SJohn Marino #define LFRACT_MIN	__LFRACT_MIN__
86*e4b17023SJohn Marino #define LFRACT_MAX	__LFRACT_MAX__
87*e4b17023SJohn Marino #define LFRACT_EPSILON	__LFRACT_EPSILON__
88*e4b17023SJohn Marino 
89*e4b17023SJohn Marino #undef ULFRACT_FBIT
90*e4b17023SJohn Marino #undef ULFRACT_MIN
91*e4b17023SJohn Marino #undef ULFRACT_MAX
92*e4b17023SJohn Marino #undef ULFRACT_EPSILON
93*e4b17023SJohn Marino #define ULFRACT_FBIT	__ULFRACT_FBIT__
94*e4b17023SJohn Marino #define ULFRACT_MIN	__ULFRACT_MIN__		/* GCC extension.  */
95*e4b17023SJohn Marino #define ULFRACT_MAX	__ULFRACT_MAX__
96*e4b17023SJohn Marino #define ULFRACT_EPSILON	__ULFRACT_EPSILON__
97*e4b17023SJohn Marino 
98*e4b17023SJohn Marino #undef LLFRACT_FBIT
99*e4b17023SJohn Marino #undef LLFRACT_MIN
100*e4b17023SJohn Marino #undef LLFRACT_MAX
101*e4b17023SJohn Marino #undef LLFRACT_EPSILON
102*e4b17023SJohn Marino #define LLFRACT_FBIT	__LLFRACT_FBIT__	/* GCC extension.  */
103*e4b17023SJohn Marino #define LLFRACT_MIN	__LLFRACT_MIN__		/* GCC extension.  */
104*e4b17023SJohn Marino #define LLFRACT_MAX	__LLFRACT_MAX__		/* GCC extension.  */
105*e4b17023SJohn Marino #define LLFRACT_EPSILON	__LLFRACT_EPSILON__	/* GCC extension.  */
106*e4b17023SJohn Marino 
107*e4b17023SJohn Marino #undef ULLFRACT_FBIT
108*e4b17023SJohn Marino #undef ULLFRACT_MIN
109*e4b17023SJohn Marino #undef ULLFRACT_MAX
110*e4b17023SJohn Marino #undef ULLFRACT_EPSILON
111*e4b17023SJohn Marino #define ULLFRACT_FBIT	__ULLFRACT_FBIT__	/* GCC extension.  */
112*e4b17023SJohn Marino #define ULLFRACT_MIN	__ULLFRACT_MIN__	/* GCC extension.  */
113*e4b17023SJohn Marino #define ULLFRACT_MAX	__ULLFRACT_MAX__	/* GCC extension.  */
114*e4b17023SJohn Marino #define ULLFRACT_EPSILON	__ULLFRACT_EPSILON__	/* GCC extension.  */
115*e4b17023SJohn Marino 
116*e4b17023SJohn Marino #undef SACCUM_FBIT
117*e4b17023SJohn Marino #undef SACCUM_IBIT
118*e4b17023SJohn Marino #undef SACCUM_MIN
119*e4b17023SJohn Marino #undef SACCUM_MAX
120*e4b17023SJohn Marino #undef SACCUM_EPSILON
121*e4b17023SJohn Marino #define SACCUM_FBIT	__SACCUM_FBIT__
122*e4b17023SJohn Marino #define SACCUM_IBIT	__SACCUM_IBIT__
123*e4b17023SJohn Marino #define SACCUM_MIN	__SACCUM_MIN__
124*e4b17023SJohn Marino #define SACCUM_MAX	__SACCUM_MAX__
125*e4b17023SJohn Marino #define SACCUM_EPSILON	__SACCUM_EPSILON__
126*e4b17023SJohn Marino 
127*e4b17023SJohn Marino #undef USACCUM_FBIT
128*e4b17023SJohn Marino #undef USACCUM_IBIT
129*e4b17023SJohn Marino #undef USACCUM_MIN
130*e4b17023SJohn Marino #undef USACCUM_MAX
131*e4b17023SJohn Marino #undef USACCUM_EPSILON
132*e4b17023SJohn Marino #define USACCUM_FBIT	__USACCUM_FBIT__
133*e4b17023SJohn Marino #define USACCUM_IBIT	__USACCUM_IBIT__
134*e4b17023SJohn Marino #define USACCUM_MIN	__USACCUM_MIN__		/* GCC extension.  */
135*e4b17023SJohn Marino #define USACCUM_MAX	__USACCUM_MAX__
136*e4b17023SJohn Marino #define USACCUM_EPSILON	__USACCUM_EPSILON__
137*e4b17023SJohn Marino 
138*e4b17023SJohn Marino #undef ACCUM_FBIT
139*e4b17023SJohn Marino #undef ACCUM_IBIT
140*e4b17023SJohn Marino #undef ACCUM_MIN
141*e4b17023SJohn Marino #undef ACCUM_MAX
142*e4b17023SJohn Marino #undef ACCUM_EPSILON
143*e4b17023SJohn Marino #define ACCUM_FBIT	__ACCUM_FBIT__
144*e4b17023SJohn Marino #define ACCUM_IBIT	__ACCUM_IBIT__
145*e4b17023SJohn Marino #define ACCUM_MIN	__ACCUM_MIN__
146*e4b17023SJohn Marino #define ACCUM_MAX	__ACCUM_MAX__
147*e4b17023SJohn Marino #define ACCUM_EPSILON	__ACCUM_EPSILON__
148*e4b17023SJohn Marino 
149*e4b17023SJohn Marino #undef UACCUM_FBIT
150*e4b17023SJohn Marino #undef UACCUM_IBIT
151*e4b17023SJohn Marino #undef UACCUM_MIN
152*e4b17023SJohn Marino #undef UACCUM_MAX
153*e4b17023SJohn Marino #undef UACCUM_EPSILON
154*e4b17023SJohn Marino #define UACCUM_FBIT	__UACCUM_FBIT__
155*e4b17023SJohn Marino #define UACCUM_IBIT	__UACCUM_IBIT__
156*e4b17023SJohn Marino #define UACCUM_MIN	__UACCUM_MIN__		/* GCC extension.  */
157*e4b17023SJohn Marino #define UACCUM_MAX	__UACCUM_MAX__
158*e4b17023SJohn Marino #define UACCUM_EPSILON	__UACCUM_EPSILON__
159*e4b17023SJohn Marino 
160*e4b17023SJohn Marino #undef LACCUM_FBIT
161*e4b17023SJohn Marino #undef LACCUM_IBIT
162*e4b17023SJohn Marino #undef LACCUM_MIN
163*e4b17023SJohn Marino #undef LACCUM_MAX
164*e4b17023SJohn Marino #undef LACCUM_EPSILON
165*e4b17023SJohn Marino #define LACCUM_FBIT	__LACCUM_FBIT__
166*e4b17023SJohn Marino #define LACCUM_IBIT	__LACCUM_IBIT__
167*e4b17023SJohn Marino #define LACCUM_MIN	__LACCUM_MIN__
168*e4b17023SJohn Marino #define LACCUM_MAX	__LACCUM_MAX__
169*e4b17023SJohn Marino #define LACCUM_EPSILON	__LACCUM_EPSILON__
170*e4b17023SJohn Marino 
171*e4b17023SJohn Marino #undef ULACCUM_FBIT
172*e4b17023SJohn Marino #undef ULACCUM_IBIT
173*e4b17023SJohn Marino #undef ULACCUM_MIN
174*e4b17023SJohn Marino #undef ULACCUM_MAX
175*e4b17023SJohn Marino #undef ULACCUM_EPSILON
176*e4b17023SJohn Marino #define ULACCUM_FBIT	__ULACCUM_FBIT__
177*e4b17023SJohn Marino #define ULACCUM_IBIT	__ULACCUM_IBIT__
178*e4b17023SJohn Marino #define ULACCUM_MIN	__ULACCUM_MIN__		/* GCC extension.  */
179*e4b17023SJohn Marino #define ULACCUM_MAX	__ULACCUM_MAX__
180*e4b17023SJohn Marino #define ULACCUM_EPSILON	__ULACCUM_EPSILON__
181*e4b17023SJohn Marino 
182*e4b17023SJohn Marino #undef LLACCUM_FBIT
183*e4b17023SJohn Marino #undef LLACCUM_IBIT
184*e4b17023SJohn Marino #undef LLACCUM_MIN
185*e4b17023SJohn Marino #undef LLACCUM_MAX
186*e4b17023SJohn Marino #undef LLACCUM_EPSILON
187*e4b17023SJohn Marino #define LLACCUM_FBIT	__LLACCUM_FBIT__	/* GCC extension.  */
188*e4b17023SJohn Marino #define LLACCUM_IBIT	__LLACCUM_IBIT__	/* GCC extension.  */
189*e4b17023SJohn Marino #define LLACCUM_MIN	__LLACCUM_MIN__		/* GCC extension.  */
190*e4b17023SJohn Marino #define LLACCUM_MAX	__LLACCUM_MAX__		/* GCC extension.  */
191*e4b17023SJohn Marino #define LLACCUM_EPSILON	__LLACCUM_EPSILON__	/* GCC extension.  */
192*e4b17023SJohn Marino 
193*e4b17023SJohn Marino #undef ULLACCUM_FBIT
194*e4b17023SJohn Marino #undef ULLACCUM_IBIT
195*e4b17023SJohn Marino #undef ULLACCUM_MIN
196*e4b17023SJohn Marino #undef ULLACCUM_MAX
197*e4b17023SJohn Marino #undef ULLACCUM_EPSILON
198*e4b17023SJohn Marino #define ULLACCUM_FBIT	__ULLACCUM_FBIT__	/* GCC extension.  */
199*e4b17023SJohn Marino #define ULLACCUM_IBIT	__ULLACCUM_IBIT__	/* GCC extension.  */
200*e4b17023SJohn Marino #define ULLACCUM_MIN	__ULLACCUM_MIN__	/* GCC extension.  */
201*e4b17023SJohn Marino #define ULLACCUM_MAX	__ULLACCUM_MAX__	/* GCC extension.  */
202*e4b17023SJohn Marino #define ULLACCUM_EPSILON	__ULLACCUM_EPSILON__	/* GCC extension.  */
203*e4b17023SJohn Marino 
204*e4b17023SJohn Marino #endif /* _STDFIX_H */
205