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