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