insn-modes.h revision 1.1
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
11enum 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
172inline __attribute__((__always_inline__))
173#else
174extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
175#endif
176unsigned char
177mode_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
229inline __attribute__((__always_inline__))
230#else
231extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
232#endif
233unsigned char
234mode_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
286inline __attribute__((__always_inline__))
287#else
288extern __inline__ __attribute__((__always_inline__, __gnu_inline__))
289#endif
290unsigned char
291mode_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