1 /* This file is automatically generated. DO NOT EDIT! */
2 /* Generated from: NetBSD: mknative-gcc,v 1.87 2016/03/17 23:41:21 mrg Exp */
3 /* Generated from: NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp */
4
5 /* Generated automatically from machmode.def and config/m68k/m68k-modes.def
6 by genmodes. */
7
8 #ifndef GCC_INSN_MODES_H
9 #define GCC_INSN_MODES_H
10
11 enum machine_mode
12 {
13 VOIDmode, /* machmode.def:172 */
14 #define HAVE_VOIDmode
15 BLKmode, /* machmode.def:176 */
16 #define HAVE_BLKmode
17 CCmode, /* machmode.def:214 */
18 #define HAVE_CCmode
19 BImode, /* machmode.def:179 */
20 #define HAVE_BImode
21 QImode, /* machmode.def:187 */
22 #define HAVE_QImode
23 HImode, /* machmode.def:188 */
24 #define HAVE_HImode
25 SImode, /* machmode.def:189 */
26 #define HAVE_SImode
27 DImode, /* machmode.def:190 */
28 #define HAVE_DImode
29 TImode, /* machmode.def:191 */
30 #define HAVE_TImode
31 QQmode, /* machmode.def:217 */
32 #define HAVE_QQmode
33 HQmode, /* machmode.def:218 */
34 #define HAVE_HQmode
35 SQmode, /* machmode.def:219 */
36 #define HAVE_SQmode
37 DQmode, /* machmode.def:220 */
38 #define HAVE_DQmode
39 TQmode, /* machmode.def:221 */
40 #define HAVE_TQmode
41 UQQmode, /* machmode.def:223 */
42 #define HAVE_UQQmode
43 UHQmode, /* machmode.def:224 */
44 #define HAVE_UHQmode
45 USQmode, /* machmode.def:225 */
46 #define HAVE_USQmode
47 UDQmode, /* machmode.def:226 */
48 #define HAVE_UDQmode
49 UTQmode, /* machmode.def:227 */
50 #define HAVE_UTQmode
51 HAmode, /* machmode.def:229 */
52 #define HAVE_HAmode
53 SAmode, /* machmode.def:230 */
54 #define HAVE_SAmode
55 DAmode, /* machmode.def:231 */
56 #define HAVE_DAmode
57 TAmode, /* machmode.def:232 */
58 #define HAVE_TAmode
59 UHAmode, /* machmode.def:234 */
60 #define HAVE_UHAmode
61 USAmode, /* machmode.def:235 */
62 #define HAVE_USAmode
63 UDAmode, /* machmode.def:236 */
64 #define HAVE_UDAmode
65 UTAmode, /* machmode.def:237 */
66 #define HAVE_UTAmode
67 SFmode, /* machmode.def:209 */
68 #define HAVE_SFmode
69 DFmode, /* machmode.def:210 */
70 #define HAVE_DFmode
71 XFmode, /* config/m68k/m68k-modes.def:25 */
72 #define HAVE_XFmode
73 SDmode, /* machmode.def:249 */
74 #define HAVE_SDmode
75 DDmode, /* machmode.def:250 */
76 #define HAVE_DDmode
77 TDmode, /* machmode.def:251 */
78 #define HAVE_TDmode
79 CQImode, /* machmode.def:245 */
80 #define HAVE_CQImode
81 CHImode, /* machmode.def:245 */
82 #define HAVE_CHImode
83 CSImode, /* machmode.def:245 */
84 #define HAVE_CSImode
85 CDImode, /* machmode.def:245 */
86 #define HAVE_CDImode
87 CTImode, /* machmode.def:245 */
88 #define HAVE_CTImode
89 SCmode, /* machmode.def:246 */
90 #define HAVE_SCmode
91 DCmode, /* machmode.def:246 */
92 #define HAVE_DCmode
93 XCmode, /* machmode.def:246 */
94 #define HAVE_XCmode
95 MAX_MACHINE_MODE,
96
97 MIN_MODE_RANDOM = VOIDmode,
98 MAX_MODE_RANDOM = BLKmode,
99
100 MIN_MODE_CC = CCmode,
101 MAX_MODE_CC = CCmode,
102
103 MIN_MODE_INT = QImode,
104 MAX_MODE_INT = TImode,
105
106 MIN_MODE_PARTIAL_INT = VOIDmode,
107 MAX_MODE_PARTIAL_INT = VOIDmode,
108
109 MIN_MODE_POINTER_BOUNDS = VOIDmode,
110 MAX_MODE_POINTER_BOUNDS = VOIDmode,
111
112 MIN_MODE_FRACT = QQmode,
113 MAX_MODE_FRACT = TQmode,
114
115 MIN_MODE_UFRACT = UQQmode,
116 MAX_MODE_UFRACT = UTQmode,
117
118 MIN_MODE_ACCUM = HAmode,
119 MAX_MODE_ACCUM = TAmode,
120
121 MIN_MODE_UACCUM = UHAmode,
122 MAX_MODE_UACCUM = UTAmode,
123
124 MIN_MODE_FLOAT = SFmode,
125 MAX_MODE_FLOAT = XFmode,
126
127 MIN_MODE_DECIMAL_FLOAT = SDmode,
128 MAX_MODE_DECIMAL_FLOAT = TDmode,
129
130 MIN_MODE_COMPLEX_INT = CQImode,
131 MAX_MODE_COMPLEX_INT = CTImode,
132
133 MIN_MODE_COMPLEX_FLOAT = SCmode,
134 MAX_MODE_COMPLEX_FLOAT = XCmode,
135
136 MIN_MODE_VECTOR_INT = VOIDmode,
137 MAX_MODE_VECTOR_INT = VOIDmode,
138
139 MIN_MODE_VECTOR_FRACT = VOIDmode,
140 MAX_MODE_VECTOR_FRACT = VOIDmode,
141
142 MIN_MODE_VECTOR_UFRACT = VOIDmode,
143 MAX_MODE_VECTOR_UFRACT = VOIDmode,
144
145 MIN_MODE_VECTOR_ACCUM = VOIDmode,
146 MAX_MODE_VECTOR_ACCUM = VOIDmode,
147
148 MIN_MODE_VECTOR_UACCUM = VOIDmode,
149 MAX_MODE_VECTOR_UACCUM = VOIDmode,
150
151 MIN_MODE_VECTOR_FLOAT = VOIDmode,
152 MAX_MODE_VECTOR_FLOAT = VOIDmode,
153
154 NUM_MACHINE_MODES = MAX_MACHINE_MODE
155 };
156
157 #define CONST_MODE_SIZE const
158 #define CONST_MODE_BASE_ALIGN const
159 #define CONST_MODE_IBIT const
160 #define CONST_MODE_FBIT const
161
162 #define BITS_PER_UNIT (8)
163 #define MAX_BITSIZE_MODE_ANY_INT (16*BITS_PER_UNIT)
164 #define MAX_BITSIZE_MODE_ANY_MODE (32*BITS_PER_UNIT)
165 #define NUM_INT_N_ENTS 1
166
167 #if !defined (USED_FOR_TARGET) && GCC_VERSION >= 4001
168
169 #ifdef __cplusplus
170 inline __attribute__((__always_inline__))
171 #else
172 extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
173 #endif
174 unsigned char
mode_size_inline(machine_mode mode)175 mode_size_inline (machine_mode mode)
176 {
177 extern const unsigned char mode_size[NUM_MACHINE_MODES];
178 switch (mode)
179 {
180 case VOIDmode: return 0;
181 case BLKmode: return 0;
182 case CCmode: return 4;
183 case BImode: return 1;
184 case QImode: return 1;
185 case HImode: return 2;
186 case SImode: return 4;
187 case DImode: return 8;
188 case TImode: return 16;
189 case QQmode: return 1;
190 case HQmode: return 2;
191 case SQmode: return 4;
192 case DQmode: return 8;
193 case TQmode: return 16;
194 case UQQmode: return 1;
195 case UHQmode: return 2;
196 case USQmode: return 4;
197 case UDQmode: return 8;
198 case UTQmode: return 16;
199 case HAmode: return 2;
200 case SAmode: return 4;
201 case DAmode: return 8;
202 case TAmode: return 16;
203 case UHAmode: return 2;
204 case USAmode: return 4;
205 case UDAmode: return 8;
206 case UTAmode: return 16;
207 case SFmode: return 4;
208 case DFmode: return 8;
209 case XFmode: return 12;
210 case SDmode: return 4;
211 case DDmode: return 8;
212 case TDmode: return 16;
213 case CQImode: return 2;
214 case CHImode: return 4;
215 case CSImode: return 8;
216 case CDImode: return 16;
217 case CTImode: return 32;
218 case SCmode: return 8;
219 case DCmode: return 16;
220 case XCmode: return 24;
221 default: return mode_size[mode];
222 }
223 }
224
225 #ifdef __cplusplus
226 inline __attribute__((__always_inline__))
227 #else
228 extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
229 #endif
230 unsigned char
mode_nunits_inline(machine_mode mode)231 mode_nunits_inline (machine_mode mode)
232 {
233 extern const unsigned char mode_nunits[NUM_MACHINE_MODES];
234 switch (mode)
235 {
236 case VOIDmode: return 0;
237 case BLKmode: return 0;
238 case CCmode: return 1;
239 case BImode: return 1;
240 case QImode: return 1;
241 case HImode: return 1;
242 case SImode: return 1;
243 case DImode: return 1;
244 case TImode: return 1;
245 case QQmode: return 1;
246 case HQmode: return 1;
247 case SQmode: return 1;
248 case DQmode: return 1;
249 case TQmode: return 1;
250 case UQQmode: return 1;
251 case UHQmode: return 1;
252 case USQmode: return 1;
253 case UDQmode: return 1;
254 case UTQmode: return 1;
255 case HAmode: return 1;
256 case SAmode: return 1;
257 case DAmode: return 1;
258 case TAmode: return 1;
259 case UHAmode: return 1;
260 case USAmode: return 1;
261 case UDAmode: return 1;
262 case UTAmode: return 1;
263 case SFmode: return 1;
264 case DFmode: return 1;
265 case XFmode: return 1;
266 case SDmode: return 1;
267 case DDmode: return 1;
268 case TDmode: return 1;
269 case CQImode: return 2;
270 case CHImode: return 2;
271 case CSImode: return 2;
272 case CDImode: return 2;
273 case CTImode: return 2;
274 case SCmode: return 2;
275 case DCmode: return 2;
276 case XCmode: return 2;
277 default: return mode_nunits[mode];
278 }
279 }
280
281 #ifdef __cplusplus
282 inline __attribute__((__always_inline__))
283 #else
284 extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
285 #endif
286 unsigned char
mode_inner_inline(machine_mode mode)287 mode_inner_inline (machine_mode mode)
288 {
289 extern const unsigned char mode_inner[NUM_MACHINE_MODES];
290 switch (mode)
291 {
292 case VOIDmode: return VOIDmode;
293 case BLKmode: return VOIDmode;
294 case CCmode: return VOIDmode;
295 case BImode: return VOIDmode;
296 case QImode: return VOIDmode;
297 case HImode: return VOIDmode;
298 case SImode: return VOIDmode;
299 case DImode: return VOIDmode;
300 case TImode: return VOIDmode;
301 case QQmode: return VOIDmode;
302 case HQmode: return VOIDmode;
303 case SQmode: return VOIDmode;
304 case DQmode: return VOIDmode;
305 case TQmode: return VOIDmode;
306 case UQQmode: return VOIDmode;
307 case UHQmode: return VOIDmode;
308 case USQmode: return VOIDmode;
309 case UDQmode: return VOIDmode;
310 case UTQmode: return VOIDmode;
311 case HAmode: return VOIDmode;
312 case SAmode: return VOIDmode;
313 case DAmode: return VOIDmode;
314 case TAmode: return VOIDmode;
315 case UHAmode: return VOIDmode;
316 case USAmode: return VOIDmode;
317 case UDAmode: return VOIDmode;
318 case UTAmode: return VOIDmode;
319 case SFmode: return VOIDmode;
320 case DFmode: return VOIDmode;
321 case XFmode: return VOIDmode;
322 case SDmode: return VOIDmode;
323 case DDmode: return VOIDmode;
324 case TDmode: return VOIDmode;
325 case CQImode: return QImode;
326 case CHImode: return HImode;
327 case CSImode: return SImode;
328 case CDImode: return DImode;
329 case CTImode: return TImode;
330 case SCmode: return SFmode;
331 case DCmode: return DFmode;
332 case XCmode: return XFmode;
333 default: return mode_inner[mode];
334 }
335 }
336
337 #endif /* GCC_VERSION >= 4001 */
338
339 #endif /* insn-modes.h */
340