Branch data Line data Source code
1 : : /* Generated automatically by the program `genopinit'
2 : : from the machine description file `md'. */
3 : :
4 : : #ifndef GCC_INSN_OPINIT_H
5 : : #define GCC_INSN_OPINIT_H 1
6 : : enum optab_tag {
7 : : unknown_optab,
8 : : sext_optab,
9 : : trunc_optab,
10 : : zext_optab,
11 : : sfix_optab,
12 : : ufix_optab,
13 : : sfloat_optab,
14 : : ufloat_optab,
15 : : lrint_optab,
16 : : lround_optab,
17 : : lfloor_optab,
18 : : lceil_optab,
19 : : fract_optab,
20 : : fractuns_optab,
21 : : satfract_optab,
22 : : satfractuns_optab,
23 : : ustrunc_optab,
24 : : sstrunc_optab,
25 : : sfixtrunc_optab,
26 : : ufixtrunc_optab,
27 : : smul_widen_optab,
28 : : umul_widen_optab,
29 : : usmul_widen_optab,
30 : : smadd_widen_optab,
31 : : umadd_widen_optab,
32 : : ssmadd_widen_optab,
33 : : usmadd_widen_optab,
34 : : smsub_widen_optab,
35 : : umsub_widen_optab,
36 : : ssmsub_widen_optab,
37 : : usmsub_widen_optab,
38 : : crc_optab,
39 : : crc_rev_optab,
40 : : vec_load_lanes_optab,
41 : : vec_store_lanes_optab,
42 : : vec_mask_load_lanes_optab,
43 : : vec_mask_store_lanes_optab,
44 : : vec_mask_len_load_lanes_optab,
45 : : vec_mask_len_store_lanes_optab,
46 : : vcond_mask_optab,
47 : : vec_cmp_optab,
48 : : vec_cmpu_optab,
49 : : vec_cmpeq_optab,
50 : : maskload_optab,
51 : : maskstore_optab,
52 : : mask_len_load_optab,
53 : : mask_len_store_optab,
54 : : gather_load_optab,
55 : : mask_gather_load_optab,
56 : : mask_len_gather_load_optab,
57 : : scatter_store_optab,
58 : : mask_scatter_store_optab,
59 : : mask_len_scatter_store_optab,
60 : : vec_extract_optab,
61 : : vec_init_optab,
62 : : sdot_prod_optab,
63 : : udot_prod_optab,
64 : : usdot_prod_optab,
65 : : while_ult_optab,
66 : : add_optab,
67 : : addv_optab,
68 : : ssadd_optab,
69 : : usadd_optab,
70 : : sub_optab,
71 : : subv_optab,
72 : : sssub_optab,
73 : : ussub_optab,
74 : : smul_optab,
75 : : smulv_optab,
76 : : ssmul_optab,
77 : : usmul_optab,
78 : : sdiv_optab,
79 : : sdivv_optab,
80 : : ssdiv_optab,
81 : : udiv_optab,
82 : : usdiv_optab,
83 : : sdivmod_optab,
84 : : udivmod_optab,
85 : : smod_optab,
86 : : umod_optab,
87 : : ftrunc_optab,
88 : : and_optab,
89 : : ior_optab,
90 : : xor_optab,
91 : : ashl_optab,
92 : : ssashl_optab,
93 : : usashl_optab,
94 : : ashr_optab,
95 : : lshr_optab,
96 : : rotl_optab,
97 : : rotr_optab,
98 : : vashl_optab,
99 : : vashr_optab,
100 : : vlshr_optab,
101 : : vrotl_optab,
102 : : vrotr_optab,
103 : : smin_optab,
104 : : smax_optab,
105 : : umin_optab,
106 : : umax_optab,
107 : : neg_optab,
108 : : negv_optab,
109 : : ssneg_optab,
110 : : usneg_optab,
111 : : abs_optab,
112 : : absv_optab,
113 : : one_cmpl_optab,
114 : : bswap_optab,
115 : : ffs_optab,
116 : : clz_optab,
117 : : ctz_optab,
118 : : clrsb_optab,
119 : : popcount_optab,
120 : : parity_optab,
121 : : cmp_optab,
122 : : ucmp_optab,
123 : : eq_optab,
124 : : ne_optab,
125 : : gt_optab,
126 : : ge_optab,
127 : : lt_optab,
128 : : le_optab,
129 : : unord_optab,
130 : : powi_optab,
131 : : sqrt_optab,
132 : : sync_old_add_optab,
133 : : sync_old_sub_optab,
134 : : sync_old_ior_optab,
135 : : sync_old_and_optab,
136 : : sync_old_xor_optab,
137 : : sync_old_nand_optab,
138 : : sync_new_add_optab,
139 : : sync_new_sub_optab,
140 : : sync_new_ior_optab,
141 : : sync_new_and_optab,
142 : : sync_new_xor_optab,
143 : : sync_new_nand_optab,
144 : : sync_compare_and_swap_optab,
145 : : sync_lock_test_and_set_optab,
146 : : mov_optab,
147 : : movstrict_optab,
148 : : movmisalign_optab,
149 : : storent_optab,
150 : : insv_optab,
151 : : extv_optab,
152 : : extzv_optab,
153 : : insvmisalign_optab,
154 : : extvmisalign_optab,
155 : : extzvmisalign_optab,
156 : : push_optab,
157 : : reload_in_optab,
158 : : reload_out_optab,
159 : : cbranch_optab,
160 : : tbranch_eq_optab,
161 : : tbranch_ne_optab,
162 : : addcc_optab,
163 : : negcc_optab,
164 : : notcc_optab,
165 : : movcc_optab,
166 : : cond_add_optab,
167 : : cond_sub_optab,
168 : : cond_smul_optab,
169 : : cond_sdiv_optab,
170 : : cond_smod_optab,
171 : : cond_udiv_optab,
172 : : cond_umod_optab,
173 : : cond_and_optab,
174 : : cond_ior_optab,
175 : : cond_xor_optab,
176 : : cond_ashl_optab,
177 : : cond_ashr_optab,
178 : : cond_lshr_optab,
179 : : cond_smin_optab,
180 : : cond_smax_optab,
181 : : cond_umin_optab,
182 : : cond_umax_optab,
183 : : cond_copysign_optab,
184 : : cond_fmin_optab,
185 : : cond_fmax_optab,
186 : : cond_fma_optab,
187 : : cond_fms_optab,
188 : : cond_fnma_optab,
189 : : cond_fnms_optab,
190 : : cond_neg_optab,
191 : : cond_one_cmpl_optab,
192 : : cond_len_add_optab,
193 : : cond_len_sub_optab,
194 : : cond_len_smul_optab,
195 : : cond_len_sdiv_optab,
196 : : cond_len_smod_optab,
197 : : cond_len_udiv_optab,
198 : : cond_len_umod_optab,
199 : : cond_len_and_optab,
200 : : cond_len_ior_optab,
201 : : cond_len_xor_optab,
202 : : cond_len_ashl_optab,
203 : : cond_len_ashr_optab,
204 : : cond_len_lshr_optab,
205 : : cond_len_smin_optab,
206 : : cond_len_smax_optab,
207 : : cond_len_umin_optab,
208 : : cond_len_umax_optab,
209 : : cond_len_copysign_optab,
210 : : cond_len_fmin_optab,
211 : : cond_len_fmax_optab,
212 : : cond_len_fma_optab,
213 : : cond_len_fms_optab,
214 : : cond_len_fnma_optab,
215 : : cond_len_fnms_optab,
216 : : cond_len_neg_optab,
217 : : cond_len_one_cmpl_optab,
218 : : vcond_mask_len_optab,
219 : : cstore_optab,
220 : : ctrap_optab,
221 : : addv4_optab,
222 : : subv4_optab,
223 : : mulv4_optab,
224 : : uaddv4_optab,
225 : : usubv4_optab,
226 : : umulv4_optab,
227 : : negv3_optab,
228 : : uaddc5_optab,
229 : : usubc5_optab,
230 : : addptr3_optab,
231 : : spaceship_optab,
232 : : smul_highpart_optab,
233 : : umul_highpart_optab,
234 : : cmpmem_optab,
235 : : cmpstr_optab,
236 : : cmpstrn_optab,
237 : : cpymem_optab,
238 : : movmem_optab,
239 : : setmem_optab,
240 : : strlen_optab,
241 : : rawmemchr_optab,
242 : : fma_optab,
243 : : fms_optab,
244 : : fnma_optab,
245 : : fnms_optab,
246 : : rint_optab,
247 : : round_optab,
248 : : roundeven_optab,
249 : : floor_optab,
250 : : ceil_optab,
251 : : btrunc_optab,
252 : : nearbyint_optab,
253 : : acos_optab,
254 : : acosh_optab,
255 : : asin_optab,
256 : : asinh_optab,
257 : : atan2_optab,
258 : : atan_optab,
259 : : atanh_optab,
260 : : copysign_optab,
261 : : xorsign_optab,
262 : : cadd90_optab,
263 : : cadd270_optab,
264 : : cmul_optab,
265 : : cmul_conj_optab,
266 : : cmla_optab,
267 : : cmla_conj_optab,
268 : : cmls_optab,
269 : : cmls_conj_optab,
270 : : cos_optab,
271 : : cosh_optab,
272 : : exp10_optab,
273 : : exp2_optab,
274 : : exp_optab,
275 : : expm1_optab,
276 : : fmod_optab,
277 : : hypot_optab,
278 : : ilogb_optab,
279 : : isinf_optab,
280 : : isfinite_optab,
281 : : isnormal_optab,
282 : : issignaling_optab,
283 : : ldexp_optab,
284 : : log10_optab,
285 : : log1p_optab,
286 : : log2_optab,
287 : : log_optab,
288 : : logb_optab,
289 : : pow_optab,
290 : : remainder_optab,
291 : : rsqrt_optab,
292 : : scalb_optab,
293 : : signbit_optab,
294 : : significand_optab,
295 : : sin_optab,
296 : : sincos_optab,
297 : : sinh_optab,
298 : : tan_optab,
299 : : tanh_optab,
300 : : fegetround_optab,
301 : : feclearexcept_optab,
302 : : feraiseexcept_optab,
303 : : fmax_optab,
304 : : fmin_optab,
305 : : reduc_fmax_scal_optab,
306 : : reduc_fmin_scal_optab,
307 : : reduc_smax_scal_optab,
308 : : reduc_smin_scal_optab,
309 : : reduc_plus_scal_optab,
310 : : reduc_umax_scal_optab,
311 : : reduc_umin_scal_optab,
312 : : reduc_and_scal_optab,
313 : : reduc_ior_scal_optab,
314 : : reduc_xor_scal_optab,
315 : : fold_left_plus_optab,
316 : : mask_fold_left_plus_optab,
317 : : mask_len_fold_left_plus_optab,
318 : : extract_last_optab,
319 : : fold_extract_last_optab,
320 : : len_fold_extract_last_optab,
321 : : uabd_optab,
322 : : sabd_optab,
323 : : savg_floor_optab,
324 : : uavg_floor_optab,
325 : : savg_ceil_optab,
326 : : uavg_ceil_optab,
327 : : ssum_widen_optab,
328 : : usum_widen_optab,
329 : : usad_optab,
330 : : ssad_optab,
331 : : smulhs_optab,
332 : : smulhrs_optab,
333 : : umulhs_optab,
334 : : umulhrs_optab,
335 : : sdiv_pow2_optab,
336 : : vec_pack_sfix_trunc_optab,
337 : : vec_pack_ssat_optab,
338 : : vec_pack_trunc_optab,
339 : : vec_pack_ufix_trunc_optab,
340 : : vec_pack_sbool_trunc_optab,
341 : : vec_pack_usat_optab,
342 : : vec_packs_float_optab,
343 : : vec_packu_float_optab,
344 : : vec_perm_optab,
345 : : vec_realign_load_optab,
346 : : vec_set_optab,
347 : : vec_shl_optab,
348 : : vec_shr_optab,
349 : : vec_unpack_sfix_trunc_hi_optab,
350 : : vec_unpack_sfix_trunc_lo_optab,
351 : : vec_unpack_ufix_trunc_hi_optab,
352 : : vec_unpack_ufix_trunc_lo_optab,
353 : : vec_unpacks_float_hi_optab,
354 : : vec_unpacks_float_lo_optab,
355 : : vec_unpacks_hi_optab,
356 : : vec_unpacks_lo_optab,
357 : : vec_unpacks_sbool_hi_optab,
358 : : vec_unpacks_sbool_lo_optab,
359 : : vec_unpacku_float_hi_optab,
360 : : vec_unpacku_float_lo_optab,
361 : : vec_unpacku_hi_optab,
362 : : vec_unpacku_lo_optab,
363 : : vec_widen_smult_even_optab,
364 : : vec_widen_smult_hi_optab,
365 : : vec_widen_smult_lo_optab,
366 : : vec_widen_smult_odd_optab,
367 : : vec_widen_ssub_optab,
368 : : vec_widen_ssub_hi_optab,
369 : : vec_widen_ssub_lo_optab,
370 : : vec_widen_ssub_odd_optab,
371 : : vec_widen_ssub_even_optab,
372 : : vec_widen_sadd_optab,
373 : : vec_widen_sadd_hi_optab,
374 : : vec_widen_sadd_lo_optab,
375 : : vec_widen_sadd_odd_optab,
376 : : vec_widen_sadd_even_optab,
377 : : vec_widen_sabd_optab,
378 : : vec_widen_sabd_hi_optab,
379 : : vec_widen_sabd_lo_optab,
380 : : vec_widen_sabd_odd_optab,
381 : : vec_widen_sabd_even_optab,
382 : : vec_widen_sshiftl_hi_optab,
383 : : vec_widen_sshiftl_lo_optab,
384 : : vec_widen_umult_even_optab,
385 : : vec_widen_umult_hi_optab,
386 : : vec_widen_umult_lo_optab,
387 : : vec_widen_umult_odd_optab,
388 : : vec_widen_ushiftl_hi_optab,
389 : : vec_widen_ushiftl_lo_optab,
390 : : vec_widen_usub_optab,
391 : : vec_widen_usub_hi_optab,
392 : : vec_widen_usub_lo_optab,
393 : : vec_widen_usub_odd_optab,
394 : : vec_widen_usub_even_optab,
395 : : vec_widen_uadd_optab,
396 : : vec_widen_uadd_hi_optab,
397 : : vec_widen_uadd_lo_optab,
398 : : vec_widen_uadd_odd_optab,
399 : : vec_widen_uadd_even_optab,
400 : : vec_widen_uabd_optab,
401 : : vec_widen_uabd_hi_optab,
402 : : vec_widen_uabd_lo_optab,
403 : : vec_widen_uabd_odd_optab,
404 : : vec_widen_uabd_even_optab,
405 : : vec_addsub_optab,
406 : : vec_fmaddsub_optab,
407 : : vec_fmsubadd_optab,
408 : : sync_add_optab,
409 : : sync_and_optab,
410 : : sync_ior_optab,
411 : : sync_lock_release_optab,
412 : : sync_nand_optab,
413 : : sync_sub_optab,
414 : : sync_xor_optab,
415 : : atomic_add_fetch_optab,
416 : : atomic_add_optab,
417 : : atomic_and_fetch_optab,
418 : : atomic_and_optab,
419 : : atomic_bit_test_and_set_optab,
420 : : atomic_bit_test_and_complement_optab,
421 : : atomic_bit_test_and_reset_optab,
422 : : atomic_compare_and_swap_optab,
423 : : atomic_exchange_optab,
424 : : atomic_fetch_add_optab,
425 : : atomic_fetch_and_optab,
426 : : atomic_fetch_nand_optab,
427 : : atomic_fetch_or_optab,
428 : : atomic_fetch_sub_optab,
429 : : atomic_fetch_xor_optab,
430 : : atomic_load_optab,
431 : : atomic_nand_fetch_optab,
432 : : atomic_nand_optab,
433 : : atomic_or_fetch_optab,
434 : : atomic_or_optab,
435 : : atomic_store_optab,
436 : : atomic_sub_fetch_optab,
437 : : atomic_sub_optab,
438 : : atomic_xor_fetch_optab,
439 : : atomic_xor_optab,
440 : : atomic_add_fetch_cmp_0_optab,
441 : : atomic_sub_fetch_cmp_0_optab,
442 : : atomic_and_fetch_cmp_0_optab,
443 : : atomic_or_fetch_cmp_0_optab,
444 : : atomic_xor_fetch_cmp_0_optab,
445 : : get_thread_pointer_optab,
446 : : set_thread_pointer_optab,
447 : : check_raw_ptrs_optab,
448 : : check_war_ptrs_optab,
449 : : vec_duplicate_optab,
450 : : vec_series_optab,
451 : : vec_shl_insert_optab,
452 : : len_load_optab,
453 : : len_store_optab,
454 : : mask_len_strided_load_optab,
455 : : mask_len_strided_store_optab,
456 : : select_vl_optab,
457 : : andn_optab,
458 : : iorn_optab,
459 : : FIRST_CONV_OPTAB = sext_optab,
460 : : LAST_CONVLIB_OPTAB = sstrunc_optab,
461 : : LAST_CONV_OPTAB = while_ult_optab,
462 : : FIRST_NORM_OPTAB = add_optab,
463 : : LAST_NORMLIB_OPTAB = sync_lock_test_and_set_optab,
464 : : LAST_NORM_OPTAB = iorn_optab
465 : : };
466 : :
467 : : #define NUM_OPTABS 452
468 : : #define NUM_CONVLIB_OPTABS 17
469 : : #define NUM_NORMLIB_OPTABS 80
470 : : #define NUM_OPTAB_PATTERNS 2900
471 : : typedef enum optab_tag optab;
472 : : typedef enum optab_tag convert_optab;
473 : : typedef enum optab_tag direct_optab;
474 : :
475 : : struct optab_libcall_d
476 : : {
477 : : char libcall_suffix;
478 : : const char *libcall_basename;
479 : : void (*libcall_gen) (optab, const char *name,
480 : : char suffix, machine_mode);
481 : : };
482 : :
483 : : struct convert_optab_libcall_d
484 : : {
485 : : const char *libcall_basename;
486 : : void (*libcall_gen) (convert_optab, const char *name,
487 : : machine_mode, machine_mode);
488 : : };
489 : :
490 : : /* Given an enum insn_code, access the function to construct
491 : : the body of that kind of insn. */
492 : : #define GEN_FCN(CODE) (insn_data[CODE].genfun)
493 : :
494 : : #ifdef NUM_RTX_CODE
495 : : /* Contains the optab used for each rtx code, and vice-versa. */
496 : : extern const optab code_to_optab_[NUM_RTX_CODE];
497 : : extern const enum rtx_code optab_to_code_[NUM_OPTABS];
498 : :
499 : : static inline optab
500 : 102932823 : code_to_optab (enum rtx_code code)
501 : : {
502 : 102932823 : return code_to_optab_[code];
503 : : }
504 : :
505 : : static inline enum rtx_code
506 : 45860707 : optab_to_code (optab op)
507 : : {
508 : 45859500 : return optab_to_code_[op];
509 : : }
510 : :
511 : : extern insn_code maybe_code_for_ccmp (machine_mode);
512 : : inline insn_code
513 : 32 : code_for_ccmp (machine_mode arg0)
514 : : {
515 : 32 : insn_code code = maybe_code_for_ccmp (arg0);
516 : 32 : gcc_assert (code != CODE_FOR_nothing);
517 : 32 : return code;
518 : : }
519 : :
520 : : extern rtx maybe_gen_ccmp (machine_mode, rtx, rtx, rtx, rtx, rtx);
521 : : inline rtx
522 : : gen_ccmp (machine_mode arg0, rtx x0, rtx x1, rtx x2, rtx x3, rtx x4)
523 : : {
524 : : rtx res = maybe_gen_ccmp (arg0, x0, x1, x2, x3, x4);
525 : : gcc_assert (res);
526 : : return res;
527 : : }
528 : :
529 : : extern insn_code maybe_code_for_cmp_1 (machine_mode);
530 : : inline insn_code
531 : : code_for_cmp_1 (machine_mode arg0)
532 : : {
533 : : insn_code code = maybe_code_for_cmp_1 (arg0);
534 : : gcc_assert (code != CODE_FOR_nothing);
535 : : return code;
536 : : }
537 : :
538 : : extern rtx maybe_gen_cmp_1 (machine_mode, rtx, rtx);
539 : : inline rtx
540 : 29027 : gen_cmp_1 (machine_mode arg0, rtx x0, rtx x1)
541 : : {
542 : 29027 : rtx res = maybe_gen_cmp_1 (arg0, x0, x1);
543 : 29027 : gcc_assert (res);
544 : 29027 : return res;
545 : : }
546 : :
547 : : extern insn_code maybe_code_for_pushfl2 (machine_mode);
548 : : inline insn_code
549 : : code_for_pushfl2 (machine_mode arg0)
550 : : {
551 : : insn_code code = maybe_code_for_pushfl2 (arg0);
552 : : gcc_assert (code != CODE_FOR_nothing);
553 : : return code;
554 : : }
555 : :
556 : : extern rtx maybe_gen_pushfl2 (machine_mode, rtx, rtx);
557 : : inline rtx
558 : 23 : gen_pushfl2 (machine_mode arg0, rtx x0, rtx x1)
559 : : {
560 : 23 : rtx res = maybe_gen_pushfl2 (arg0, x0, x1);
561 : 23 : gcc_assert (res);
562 : 23 : return res;
563 : : }
564 : :
565 : : extern insn_code maybe_code_for_popfl1 (machine_mode);
566 : : inline insn_code
567 : : code_for_popfl1 (machine_mode arg0)
568 : : {
569 : : insn_code code = maybe_code_for_popfl1 (arg0);
570 : : gcc_assert (code != CODE_FOR_nothing);
571 : : return code;
572 : : }
573 : :
574 : : extern rtx maybe_gen_popfl1 (machine_mode, rtx, rtx);
575 : : inline rtx
576 : 21 : gen_popfl1 (machine_mode arg0, rtx x0, rtx x1)
577 : : {
578 : 21 : rtx res = maybe_gen_popfl1 (arg0, x0, x1);
579 : 21 : gcc_assert (res);
580 : 21 : return res;
581 : : }
582 : :
583 : : extern insn_code maybe_code_for_insv_1 (machine_mode);
584 : : inline insn_code
585 : : code_for_insv_1 (machine_mode arg0)
586 : : {
587 : : insn_code code = maybe_code_for_insv_1 (arg0);
588 : : gcc_assert (code != CODE_FOR_nothing);
589 : : return code;
590 : : }
591 : :
592 : : extern rtx maybe_gen_insv_1 (machine_mode, rtx, rtx);
593 : : inline rtx
594 : 2473 : gen_insv_1 (machine_mode arg0, rtx x0, rtx x1)
595 : : {
596 : 2473 : rtx res = maybe_gen_insv_1 (arg0, x0, x1);
597 : 2473 : gcc_assert (res);
598 : 2473 : return res;
599 : : }
600 : :
601 : : extern insn_code maybe_code_for_add3_carry (machine_mode);
602 : : inline insn_code
603 : : code_for_add3_carry (machine_mode arg0)
604 : : {
605 : : insn_code code = maybe_code_for_add3_carry (arg0);
606 : : gcc_assert (code != CODE_FOR_nothing);
607 : : return code;
608 : : }
609 : :
610 : : extern rtx maybe_gen_add3_carry (machine_mode, rtx, rtx, rtx, rtx, rtx);
611 : : inline rtx
612 : 2528 : gen_add3_carry (machine_mode arg0, rtx x0, rtx x1, rtx x2, rtx x3, rtx x4)
613 : : {
614 : 2528 : rtx res = maybe_gen_add3_carry (arg0, x0, x1, x2, x3, x4);
615 : 2528 : gcc_assert (res);
616 : 2528 : return res;
617 : : }
618 : :
619 : : extern insn_code maybe_code_for_sub3_carry (machine_mode);
620 : : inline insn_code
621 : : code_for_sub3_carry (machine_mode arg0)
622 : : {
623 : : insn_code code = maybe_code_for_sub3_carry (arg0);
624 : : gcc_assert (code != CODE_FOR_nothing);
625 : : return code;
626 : : }
627 : :
628 : : extern rtx maybe_gen_sub3_carry (machine_mode, rtx, rtx, rtx, rtx, rtx);
629 : : inline rtx
630 : 781 : gen_sub3_carry (machine_mode arg0, rtx x0, rtx x1, rtx x2, rtx x3, rtx x4)
631 : : {
632 : 781 : rtx res = maybe_gen_sub3_carry (arg0, x0, x1, x2, x3, x4);
633 : 781 : gcc_assert (res);
634 : 781 : return res;
635 : : }
636 : :
637 : : extern insn_code maybe_code_for_sub3_carry_ccc (machine_mode);
638 : : inline insn_code
639 : : code_for_sub3_carry_ccc (machine_mode arg0)
640 : : {
641 : : insn_code code = maybe_code_for_sub3_carry_ccc (arg0);
642 : : gcc_assert (code != CODE_FOR_nothing);
643 : : return code;
644 : : }
645 : :
646 : : extern rtx maybe_gen_sub3_carry_ccc (machine_mode, rtx, rtx, rtx);
647 : : inline rtx
648 : 16897 : gen_sub3_carry_ccc (machine_mode arg0, rtx x0, rtx x1, rtx x2)
649 : : {
650 : 16897 : rtx res = maybe_gen_sub3_carry_ccc (arg0, x0, x1, x2);
651 : 16897 : gcc_assert (res);
652 : 16897 : return res;
653 : : }
654 : :
655 : : extern insn_code maybe_code_for_sub3_carry_ccgz (machine_mode);
656 : : inline insn_code
657 : : code_for_sub3_carry_ccgz (machine_mode arg0)
658 : : {
659 : : insn_code code = maybe_code_for_sub3_carry_ccgz (arg0);
660 : : gcc_assert (code != CODE_FOR_nothing);
661 : : return code;
662 : : }
663 : :
664 : : extern rtx maybe_gen_sub3_carry_ccgz (machine_mode, rtx, rtx, rtx);
665 : : inline rtx
666 : 4319 : gen_sub3_carry_ccgz (machine_mode arg0, rtx x0, rtx x1, rtx x2)
667 : : {
668 : 4319 : rtx res = maybe_gen_sub3_carry_ccgz (arg0, x0, x1, x2);
669 : 4319 : gcc_assert (res);
670 : 4319 : return res;
671 : : }
672 : :
673 : : extern insn_code maybe_code_for_add3_cc_overflow_1 (machine_mode);
674 : : inline insn_code
675 : : code_for_add3_cc_overflow_1 (machine_mode arg0)
676 : : {
677 : : insn_code code = maybe_code_for_add3_cc_overflow_1 (arg0);
678 : : gcc_assert (code != CODE_FOR_nothing);
679 : : return code;
680 : : }
681 : :
682 : : extern rtx maybe_gen_add3_cc_overflow_1 (machine_mode, rtx, rtx, rtx);
683 : : inline rtx
684 : 2065 : gen_add3_cc_overflow_1 (machine_mode arg0, rtx x0, rtx x1, rtx x2)
685 : : {
686 : 2065 : rtx res = maybe_gen_add3_cc_overflow_1 (arg0, x0, x1, x2);
687 : 2065 : gcc_assert (res);
688 : 2065 : return res;
689 : : }
690 : :
691 : : extern insn_code maybe_code_for_test_ccno_1 (machine_mode);
692 : : inline insn_code
693 : : code_for_test_ccno_1 (machine_mode arg0)
694 : : {
695 : : insn_code code = maybe_code_for_test_ccno_1 (arg0);
696 : : gcc_assert (code != CODE_FOR_nothing);
697 : : return code;
698 : : }
699 : :
700 : : extern rtx maybe_gen_test_ccno_1 (machine_mode, rtx, rtx);
701 : : inline rtx
702 : 27 : gen_test_ccno_1 (machine_mode arg0, rtx x0, rtx x1)
703 : : {
704 : 27 : rtx res = maybe_gen_test_ccno_1 (arg0, x0, x1);
705 : 27 : gcc_assert (res);
706 : 27 : return res;
707 : : }
708 : :
709 : : extern insn_code maybe_code_for_x86_shift_adj_1 (machine_mode);
710 : : inline insn_code
711 : : code_for_x86_shift_adj_1 (machine_mode arg0)
712 : : {
713 : : insn_code code = maybe_code_for_x86_shift_adj_1 (arg0);
714 : : gcc_assert (code != CODE_FOR_nothing);
715 : : return code;
716 : : }
717 : :
718 : : extern rtx maybe_gen_x86_shift_adj_1 (machine_mode, rtx, rtx, rtx, rtx);
719 : : inline rtx
720 : 2232 : gen_x86_shift_adj_1 (machine_mode arg0, rtx x0, rtx x1, rtx x2, rtx x3)
721 : : {
722 : 2232 : rtx res = maybe_gen_x86_shift_adj_1 (arg0, x0, x1, x2, x3);
723 : 2232 : gcc_assert (res);
724 : 2232 : return res;
725 : : }
726 : :
727 : : extern insn_code maybe_code_for_x86_shift_adj_2 (machine_mode);
728 : : inline insn_code
729 : : code_for_x86_shift_adj_2 (machine_mode arg0)
730 : : {
731 : : insn_code code = maybe_code_for_x86_shift_adj_2 (arg0);
732 : : gcc_assert (code != CODE_FOR_nothing);
733 : : return code;
734 : : }
735 : :
736 : : extern rtx maybe_gen_x86_shift_adj_2 (machine_mode, rtx, rtx, rtx);
737 : : inline rtx
738 : 738 : gen_x86_shift_adj_2 (machine_mode arg0, rtx x0, rtx x1, rtx x2)
739 : : {
740 : 738 : rtx res = maybe_gen_x86_shift_adj_2 (arg0, x0, x1, x2);
741 : 738 : gcc_assert (res);
742 : 738 : return res;
743 : : }
744 : :
745 : : extern insn_code maybe_code_for_x86_shift_adj_3 (machine_mode);
746 : : inline insn_code
747 : : code_for_x86_shift_adj_3 (machine_mode arg0)
748 : : {
749 : : insn_code code = maybe_code_for_x86_shift_adj_3 (arg0);
750 : : gcc_assert (code != CODE_FOR_nothing);
751 : : return code;
752 : : }
753 : :
754 : : extern rtx maybe_gen_x86_shift_adj_3 (machine_mode, rtx, rtx, rtx);
755 : : inline rtx
756 : 38 : gen_x86_shift_adj_3 (machine_mode arg0, rtx x0, rtx x1, rtx x2)
757 : : {
758 : 38 : rtx res = maybe_gen_x86_shift_adj_3 (arg0, x0, x1, x2);
759 : 38 : gcc_assert (res);
760 : 38 : return res;
761 : : }
762 : :
763 : : extern insn_code maybe_code_for_leave (machine_mode);
764 : : inline insn_code
765 : : code_for_leave (machine_mode arg0)
766 : : {
767 : : insn_code code = maybe_code_for_leave (arg0);
768 : : gcc_assert (code != CODE_FOR_nothing);
769 : : return code;
770 : : }
771 : :
772 : : extern rtx maybe_gen_leave (machine_mode);
773 : : inline rtx
774 : 238377 : gen_leave (machine_mode arg0)
775 : : {
776 : 238377 : rtx res = maybe_gen_leave (arg0);
777 : 238377 : gcc_assert (res);
778 : 238377 : return res;
779 : : }
780 : :
781 : : extern insn_code maybe_code_for_tbm_bextri (machine_mode);
782 : : inline insn_code
783 : 18 : code_for_tbm_bextri (machine_mode arg0)
784 : : {
785 : 18 : insn_code code = maybe_code_for_tbm_bextri (arg0);
786 : 18 : gcc_assert (code != CODE_FOR_nothing);
787 : 18 : return code;
788 : : }
789 : :
790 : : extern rtx maybe_gen_tbm_bextri (machine_mode, rtx, rtx, rtx, rtx);
791 : : inline rtx
792 : : gen_tbm_bextri (machine_mode arg0, rtx x0, rtx x1, rtx x2, rtx x3)
793 : : {
794 : : rtx res = maybe_gen_tbm_bextri (arg0, x0, x1, x2, x3);
795 : : gcc_assert (res);
796 : : return res;
797 : : }
798 : :
799 : : extern insn_code maybe_code_for_tls_global_dynamic_64 (machine_mode);
800 : : inline insn_code
801 : : code_for_tls_global_dynamic_64 (machine_mode arg0)
802 : : {
803 : : insn_code code = maybe_code_for_tls_global_dynamic_64 (arg0);
804 : : gcc_assert (code != CODE_FOR_nothing);
805 : : return code;
806 : : }
807 : :
808 : : extern rtx maybe_gen_tls_global_dynamic_64 (machine_mode, rtx, rtx, rtx);
809 : : inline rtx
810 : 4237 : gen_tls_global_dynamic_64 (machine_mode arg0, rtx x0, rtx x1, rtx x2)
811 : : {
812 : 4237 : rtx res = maybe_gen_tls_global_dynamic_64 (arg0, x0, x1, x2);
813 : 4237 : gcc_assert (res);
814 : 4237 : return res;
815 : : }
816 : :
817 : : extern insn_code maybe_code_for_tls_local_dynamic_base_64 (machine_mode);
818 : : inline insn_code
819 : : code_for_tls_local_dynamic_base_64 (machine_mode arg0)
820 : : {
821 : : insn_code code = maybe_code_for_tls_local_dynamic_base_64 (arg0);
822 : : gcc_assert (code != CODE_FOR_nothing);
823 : : return code;
824 : : }
825 : :
826 : : extern rtx maybe_gen_tls_local_dynamic_base_64 (machine_mode, rtx, rtx);
827 : : inline rtx
828 : 325 : gen_tls_local_dynamic_base_64 (machine_mode arg0, rtx x0, rtx x1)
829 : : {
830 : 325 : rtx res = maybe_gen_tls_local_dynamic_base_64 (arg0, x0, x1);
831 : 325 : gcc_assert (res);
832 : 325 : return res;
833 : : }
834 : :
835 : : extern insn_code maybe_code_for_tls_dynamic_gnu2_64 (machine_mode);
836 : : inline insn_code
837 : : code_for_tls_dynamic_gnu2_64 (machine_mode arg0)
838 : : {
839 : : insn_code code = maybe_code_for_tls_dynamic_gnu2_64 (arg0);
840 : : gcc_assert (code != CODE_FOR_nothing);
841 : : return code;
842 : : }
843 : :
844 : : extern rtx maybe_gen_tls_dynamic_gnu2_64 (machine_mode, rtx, rtx);
845 : : inline rtx
846 : 23 : gen_tls_dynamic_gnu2_64 (machine_mode arg0, rtx x0, rtx x1)
847 : : {
848 : 23 : rtx res = maybe_gen_tls_dynamic_gnu2_64 (arg0, x0, x1);
849 : 23 : gcc_assert (res);
850 : 23 : return res;
851 : : }
852 : :
853 : : extern insn_code maybe_code_for_pro_epilogue_adjust_stack_add (machine_mode);
854 : : inline insn_code
855 : : code_for_pro_epilogue_adjust_stack_add (machine_mode arg0)
856 : : {
857 : : insn_code code = maybe_code_for_pro_epilogue_adjust_stack_add (arg0);
858 : : gcc_assert (code != CODE_FOR_nothing);
859 : : return code;
860 : : }
861 : :
862 : : extern rtx maybe_gen_pro_epilogue_adjust_stack_add (machine_mode, rtx, rtx, rtx);
863 : : inline rtx
864 : 1472698 : gen_pro_epilogue_adjust_stack_add (machine_mode arg0, rtx x0, rtx x1, rtx x2)
865 : : {
866 : 1472698 : rtx res = maybe_gen_pro_epilogue_adjust_stack_add (arg0, x0, x1, x2);
867 : 1472698 : gcc_assert (res);
868 : 1472698 : return res;
869 : : }
870 : :
871 : : extern insn_code maybe_code_for_pro_epilogue_adjust_stack_add_nocc (machine_mode);
872 : : inline insn_code
873 : : code_for_pro_epilogue_adjust_stack_add_nocc (machine_mode arg0)
874 : : {
875 : : insn_code code = maybe_code_for_pro_epilogue_adjust_stack_add_nocc (arg0);
876 : : gcc_assert (code != CODE_FOR_nothing);
877 : : return code;
878 : : }
879 : :
880 : : extern rtx maybe_gen_pro_epilogue_adjust_stack_add_nocc (machine_mode, rtx, rtx, rtx);
881 : : inline rtx
882 : 99842 : gen_pro_epilogue_adjust_stack_add_nocc (machine_mode arg0, rtx x0, rtx x1, rtx x2)
883 : : {
884 : 99842 : rtx res = maybe_gen_pro_epilogue_adjust_stack_add_nocc (arg0, x0, x1, x2);
885 : 99842 : gcc_assert (res);
886 : 99842 : return res;
887 : : }
888 : :
889 : : extern insn_code maybe_code_for_pro_epilogue_adjust_stack_sub (machine_mode);
890 : : inline insn_code
891 : : code_for_pro_epilogue_adjust_stack_sub (machine_mode arg0)
892 : : {
893 : : insn_code code = maybe_code_for_pro_epilogue_adjust_stack_sub (arg0);
894 : : gcc_assert (code != CODE_FOR_nothing);
895 : : return code;
896 : : }
897 : :
898 : : extern rtx maybe_gen_pro_epilogue_adjust_stack_sub (machine_mode, rtx, rtx, rtx);
899 : : inline rtx
900 : 44 : gen_pro_epilogue_adjust_stack_sub (machine_mode arg0, rtx x0, rtx x1, rtx x2)
901 : : {
902 : 44 : rtx res = maybe_gen_pro_epilogue_adjust_stack_sub (arg0, x0, x1, x2);
903 : 44 : gcc_assert (res);
904 : 44 : return res;
905 : : }
906 : :
907 : : extern insn_code maybe_code_for_allocate_stack_worker_probe (machine_mode);
908 : : inline insn_code
909 : : code_for_allocate_stack_worker_probe (machine_mode arg0)
910 : : {
911 : : insn_code code = maybe_code_for_allocate_stack_worker_probe (arg0);
912 : : gcc_assert (code != CODE_FOR_nothing);
913 : : return code;
914 : : }
915 : :
916 : : extern rtx maybe_gen_allocate_stack_worker_probe (machine_mode, rtx, rtx);
917 : : inline rtx
918 : 44 : gen_allocate_stack_worker_probe (machine_mode arg0, rtx x0, rtx x1)
919 : : {
920 : 44 : rtx res = maybe_gen_allocate_stack_worker_probe (arg0, x0, x1);
921 : 44 : gcc_assert (res);
922 : 44 : return res;
923 : : }
924 : :
925 : : extern insn_code maybe_code_for_probe_stack_1 (machine_mode);
926 : : inline insn_code
927 : : code_for_probe_stack_1 (machine_mode arg0)
928 : : {
929 : : insn_code code = maybe_code_for_probe_stack_1 (arg0);
930 : : gcc_assert (code != CODE_FOR_nothing);
931 : : return code;
932 : : }
933 : :
934 : : extern rtx maybe_gen_probe_stack_1 (machine_mode, rtx, rtx);
935 : : inline rtx
936 : 135 : gen_probe_stack_1 (machine_mode arg0, rtx x0, rtx x1)
937 : : {
938 : 135 : rtx res = maybe_gen_probe_stack_1 (arg0, x0, x1);
939 : 135 : gcc_assert (res);
940 : 135 : return res;
941 : : }
942 : :
943 : : extern insn_code maybe_code_for_adjust_stack_and_probe (machine_mode);
944 : : inline insn_code
945 : : code_for_adjust_stack_and_probe (machine_mode arg0)
946 : : {
947 : : insn_code code = maybe_code_for_adjust_stack_and_probe (arg0);
948 : : gcc_assert (code != CODE_FOR_nothing);
949 : : return code;
950 : : }
951 : :
952 : : extern rtx maybe_gen_adjust_stack_and_probe (machine_mode, rtx, rtx, rtx);
953 : : inline rtx
954 : 25 : gen_adjust_stack_and_probe (machine_mode arg0, rtx x0, rtx x1, rtx x2)
955 : : {
956 : 25 : rtx res = maybe_gen_adjust_stack_and_probe (arg0, x0, x1, x2);
957 : 25 : gcc_assert (res);
958 : 25 : return res;
959 : : }
960 : :
961 : : extern insn_code maybe_code_for_probe_stack_range (machine_mode);
962 : : inline insn_code
963 : : code_for_probe_stack_range (machine_mode arg0)
964 : : {
965 : : insn_code code = maybe_code_for_probe_stack_range (arg0);
966 : : gcc_assert (code != CODE_FOR_nothing);
967 : : return code;
968 : : }
969 : :
970 : : extern rtx maybe_gen_probe_stack_range (machine_mode, rtx, rtx, rtx);
971 : : inline rtx
972 : 0 : gen_probe_stack_range (machine_mode arg0, rtx x0, rtx x1, rtx x2)
973 : : {
974 : 0 : rtx res = maybe_gen_probe_stack_range (arg0, x0, x1, x2);
975 : 0 : gcc_assert (res);
976 : 0 : return res;
977 : : }
978 : :
979 : : extern insn_code maybe_code_for_stack_protect_set_1 (machine_mode, machine_mode);
980 : : inline insn_code
981 : : code_for_stack_protect_set_1 (machine_mode arg0, machine_mode arg1)
982 : : {
983 : : insn_code code = maybe_code_for_stack_protect_set_1 (arg0, arg1);
984 : : gcc_assert (code != CODE_FOR_nothing);
985 : : return code;
986 : : }
987 : :
988 : : extern rtx maybe_gen_stack_protect_set_1 (machine_mode, machine_mode, rtx, rtx, rtx);
989 : : inline rtx
990 : 237 : gen_stack_protect_set_1 (machine_mode arg0, machine_mode arg1, rtx x0, rtx x1, rtx x2)
991 : : {
992 : 237 : rtx res = maybe_gen_stack_protect_set_1 (arg0, arg1, x0, x1, x2);
993 : 237 : gcc_assert (res);
994 : 237 : return res;
995 : : }
996 : :
997 : : extern insn_code maybe_code_for_stack_protect_test_1 (machine_mode);
998 : : inline insn_code
999 : 165 : code_for_stack_protect_test_1 (machine_mode arg0)
1000 : : {
1001 : 165 : insn_code code = maybe_code_for_stack_protect_test_1 (arg0);
1002 : 165 : gcc_assert (code != CODE_FOR_nothing);
1003 : 165 : return code;
1004 : : }
1005 : :
1006 : : extern rtx maybe_gen_stack_protect_test_1 (machine_mode, rtx, rtx, rtx);
1007 : : inline rtx
1008 : 263 : gen_stack_protect_test_1 (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1009 : : {
1010 : 263 : rtx res = maybe_gen_stack_protect_test_1 (arg0, x0, x1, x2);
1011 : 263 : gcc_assert (res);
1012 : 263 : return res;
1013 : : }
1014 : :
1015 : : extern insn_code maybe_code_for_lwp_llwpcb (machine_mode);
1016 : : inline insn_code
1017 : : code_for_lwp_llwpcb (machine_mode arg0)
1018 : : {
1019 : : insn_code code = maybe_code_for_lwp_llwpcb (arg0);
1020 : : gcc_assert (code != CODE_FOR_nothing);
1021 : : return code;
1022 : : }
1023 : :
1024 : : extern rtx maybe_gen_lwp_llwpcb (machine_mode, rtx);
1025 : : inline rtx
1026 : 18 : gen_lwp_llwpcb (machine_mode arg0, rtx x0)
1027 : : {
1028 : 18 : rtx res = maybe_gen_lwp_llwpcb (arg0, x0);
1029 : 18 : gcc_assert (res);
1030 : 18 : return res;
1031 : : }
1032 : :
1033 : : extern insn_code maybe_code_for_lwp_slwpcb (machine_mode);
1034 : : inline insn_code
1035 : : code_for_lwp_slwpcb (machine_mode arg0)
1036 : : {
1037 : : insn_code code = maybe_code_for_lwp_slwpcb (arg0);
1038 : : gcc_assert (code != CODE_FOR_nothing);
1039 : : return code;
1040 : : }
1041 : :
1042 : : extern rtx maybe_gen_lwp_slwpcb (machine_mode, rtx);
1043 : : inline rtx
1044 : 18 : gen_lwp_slwpcb (machine_mode arg0, rtx x0)
1045 : : {
1046 : 18 : rtx res = maybe_gen_lwp_slwpcb (arg0, x0);
1047 : 18 : gcc_assert (res);
1048 : 18 : return res;
1049 : : }
1050 : :
1051 : : extern insn_code maybe_code_for_lwp_lwpval (machine_mode);
1052 : : inline insn_code
1053 : 26 : code_for_lwp_lwpval (machine_mode arg0)
1054 : : {
1055 : 26 : insn_code code = maybe_code_for_lwp_lwpval (arg0);
1056 : 26 : gcc_assert (code != CODE_FOR_nothing);
1057 : 26 : return code;
1058 : : }
1059 : :
1060 : : extern rtx maybe_gen_lwp_lwpval (machine_mode, rtx, rtx, rtx);
1061 : : inline rtx
1062 : : gen_lwp_lwpval (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1063 : : {
1064 : : rtx res = maybe_gen_lwp_lwpval (arg0, x0, x1, x2);
1065 : : gcc_assert (res);
1066 : : return res;
1067 : : }
1068 : :
1069 : : extern insn_code maybe_code_for_lwp_lwpins (machine_mode);
1070 : : inline insn_code
1071 : 25 : code_for_lwp_lwpins (machine_mode arg0)
1072 : : {
1073 : 25 : insn_code code = maybe_code_for_lwp_lwpins (arg0);
1074 : 25 : gcc_assert (code != CODE_FOR_nothing);
1075 : 25 : return code;
1076 : : }
1077 : :
1078 : : extern rtx maybe_gen_lwp_lwpins (machine_mode, rtx, rtx, rtx);
1079 : : inline rtx
1080 : : gen_lwp_lwpins (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1081 : : {
1082 : : rtx res = maybe_gen_lwp_lwpins (arg0, x0, x1, x2);
1083 : : gcc_assert (res);
1084 : : return res;
1085 : : }
1086 : :
1087 : : extern insn_code maybe_code_for_rdrand (machine_mode);
1088 : : inline insn_code
1089 : : code_for_rdrand (machine_mode arg0)
1090 : : {
1091 : : insn_code code = maybe_code_for_rdrand (arg0);
1092 : : gcc_assert (code != CODE_FOR_nothing);
1093 : : return code;
1094 : : }
1095 : :
1096 : : extern rtx maybe_gen_rdrand (machine_mode, rtx);
1097 : : inline rtx
1098 : 83 : gen_rdrand (machine_mode arg0, rtx x0)
1099 : : {
1100 : 83 : rtx res = maybe_gen_rdrand (arg0, x0);
1101 : 83 : gcc_assert (res);
1102 : 83 : return res;
1103 : : }
1104 : :
1105 : : extern insn_code maybe_code_for_rdseed (machine_mode);
1106 : : inline insn_code
1107 : : code_for_rdseed (machine_mode arg0)
1108 : : {
1109 : : insn_code code = maybe_code_for_rdseed (arg0);
1110 : : gcc_assert (code != CODE_FOR_nothing);
1111 : : return code;
1112 : : }
1113 : :
1114 : : extern rtx maybe_gen_rdseed (machine_mode, rtx);
1115 : : inline rtx
1116 : 66 : gen_rdseed (machine_mode arg0, rtx x0)
1117 : : {
1118 : 66 : rtx res = maybe_gen_rdseed (arg0, x0);
1119 : 66 : gcc_assert (res);
1120 : 66 : return res;
1121 : : }
1122 : :
1123 : : extern insn_code maybe_code_for_rdssp (machine_mode);
1124 : : inline insn_code
1125 : : code_for_rdssp (machine_mode arg0)
1126 : : {
1127 : : insn_code code = maybe_code_for_rdssp (arg0);
1128 : : gcc_assert (code != CODE_FOR_nothing);
1129 : : return code;
1130 : : }
1131 : :
1132 : : extern rtx maybe_gen_rdssp (machine_mode, rtx, rtx);
1133 : : inline rtx
1134 : 81 : gen_rdssp (machine_mode arg0, rtx x0, rtx x1)
1135 : : {
1136 : 81 : rtx res = maybe_gen_rdssp (arg0, x0, x1);
1137 : 81 : gcc_assert (res);
1138 : 81 : return res;
1139 : : }
1140 : :
1141 : : extern insn_code maybe_code_for_incssp (machine_mode);
1142 : : inline insn_code
1143 : : code_for_incssp (machine_mode arg0)
1144 : : {
1145 : : insn_code code = maybe_code_for_incssp (arg0);
1146 : : gcc_assert (code != CODE_FOR_nothing);
1147 : : return code;
1148 : : }
1149 : :
1150 : : extern rtx maybe_gen_incssp (machine_mode, rtx);
1151 : : inline rtx
1152 : 81 : gen_incssp (machine_mode arg0, rtx x0)
1153 : : {
1154 : 81 : rtx res = maybe_gen_incssp (arg0, x0);
1155 : 81 : gcc_assert (res);
1156 : 81 : return res;
1157 : : }
1158 : :
1159 : : extern insn_code maybe_code_for_wrss (machine_mode);
1160 : : inline insn_code
1161 : 38 : code_for_wrss (machine_mode arg0)
1162 : : {
1163 : 38 : insn_code code = maybe_code_for_wrss (arg0);
1164 : 38 : gcc_assert (code != CODE_FOR_nothing);
1165 : 38 : return code;
1166 : : }
1167 : :
1168 : : extern rtx maybe_gen_wrss (machine_mode, rtx, rtx);
1169 : : inline rtx
1170 : : gen_wrss (machine_mode arg0, rtx x0, rtx x1)
1171 : : {
1172 : : rtx res = maybe_gen_wrss (arg0, x0, x1);
1173 : : gcc_assert (res);
1174 : : return res;
1175 : : }
1176 : :
1177 : : extern insn_code maybe_code_for_wruss (machine_mode);
1178 : : inline insn_code
1179 : 38 : code_for_wruss (machine_mode arg0)
1180 : : {
1181 : 38 : insn_code code = maybe_code_for_wruss (arg0);
1182 : 38 : gcc_assert (code != CODE_FOR_nothing);
1183 : 38 : return code;
1184 : : }
1185 : :
1186 : : extern rtx maybe_gen_wruss (machine_mode, rtx, rtx);
1187 : : inline rtx
1188 : : gen_wruss (machine_mode arg0, rtx x0, rtx x1)
1189 : : {
1190 : : rtx res = maybe_gen_wruss (arg0, x0, x1);
1191 : : gcc_assert (res);
1192 : : return res;
1193 : : }
1194 : :
1195 : : extern insn_code maybe_code_for_monitorx (machine_mode);
1196 : : inline insn_code
1197 : : code_for_monitorx (machine_mode arg0)
1198 : : {
1199 : : insn_code code = maybe_code_for_monitorx (arg0);
1200 : : gcc_assert (code != CODE_FOR_nothing);
1201 : : return code;
1202 : : }
1203 : :
1204 : : extern rtx maybe_gen_monitorx (machine_mode, rtx, rtx, rtx);
1205 : : inline rtx
1206 : 21 : gen_monitorx (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1207 : : {
1208 : 21 : rtx res = maybe_gen_monitorx (arg0, x0, x1, x2);
1209 : 21 : gcc_assert (res);
1210 : 21 : return res;
1211 : : }
1212 : :
1213 : : extern insn_code maybe_code_for_clzero (machine_mode);
1214 : : inline insn_code
1215 : : code_for_clzero (machine_mode arg0)
1216 : : {
1217 : : insn_code code = maybe_code_for_clzero (arg0);
1218 : : gcc_assert (code != CODE_FOR_nothing);
1219 : : return code;
1220 : : }
1221 : :
1222 : : extern rtx maybe_gen_clzero (machine_mode, rtx);
1223 : : inline rtx
1224 : 19 : gen_clzero (machine_mode arg0, rtx x0)
1225 : : {
1226 : 19 : rtx res = maybe_gen_clzero (arg0, x0);
1227 : 19 : gcc_assert (res);
1228 : 19 : return res;
1229 : : }
1230 : :
1231 : : extern insn_code maybe_code_for_movdir64b (machine_mode);
1232 : : inline insn_code
1233 : : code_for_movdir64b (machine_mode arg0)
1234 : : {
1235 : : insn_code code = maybe_code_for_movdir64b (arg0);
1236 : : gcc_assert (code != CODE_FOR_nothing);
1237 : : return code;
1238 : : }
1239 : :
1240 : : extern rtx maybe_gen_movdir64b (machine_mode, rtx, rtx);
1241 : : inline rtx
1242 : 23 : gen_movdir64b (machine_mode arg0, rtx x0, rtx x1)
1243 : : {
1244 : 23 : rtx res = maybe_gen_movdir64b (arg0, x0, x1);
1245 : 23 : gcc_assert (res);
1246 : 23 : return res;
1247 : : }
1248 : :
1249 : : extern insn_code maybe_code_for_enqcmd (int, machine_mode);
1250 : : inline insn_code
1251 : 38 : code_for_enqcmd (int arg0, machine_mode arg1)
1252 : : {
1253 : 38 : insn_code code = maybe_code_for_enqcmd (arg0, arg1);
1254 : 38 : gcc_assert (code != CODE_FOR_nothing);
1255 : 38 : return code;
1256 : : }
1257 : :
1258 : : extern rtx maybe_gen_enqcmd (int, machine_mode, rtx, rtx);
1259 : : inline rtx
1260 : : gen_enqcmd (int arg0, machine_mode arg1, rtx x0, rtx x1)
1261 : : {
1262 : : rtx res = maybe_gen_enqcmd (arg0, arg1, x0, x1);
1263 : : gcc_assert (res);
1264 : : return res;
1265 : : }
1266 : :
1267 : : extern insn_code maybe_code_for_umonitor (machine_mode);
1268 : : inline insn_code
1269 : : code_for_umonitor (machine_mode arg0)
1270 : : {
1271 : : insn_code code = maybe_code_for_umonitor (arg0);
1272 : : gcc_assert (code != CODE_FOR_nothing);
1273 : : return code;
1274 : : }
1275 : :
1276 : : extern rtx maybe_gen_umonitor (machine_mode, rtx);
1277 : : inline rtx
1278 : 21 : gen_umonitor (machine_mode arg0, rtx x0)
1279 : : {
1280 : 21 : rtx res = maybe_gen_umonitor (arg0, x0);
1281 : 21 : gcc_assert (res);
1282 : 21 : return res;
1283 : : }
1284 : :
1285 : : extern insn_code maybe_code_for_sse4_1_insertps (machine_mode);
1286 : : inline insn_code
1287 : : code_for_sse4_1_insertps (machine_mode arg0)
1288 : : {
1289 : : insn_code code = maybe_code_for_sse4_1_insertps (arg0);
1290 : : gcc_assert (code != CODE_FOR_nothing);
1291 : : return code;
1292 : : }
1293 : :
1294 : : extern rtx maybe_gen_sse4_1_insertps (machine_mode, rtx, rtx, rtx, rtx);
1295 : : inline rtx
1296 : 425 : gen_sse4_1_insertps (machine_mode arg0, rtx x0, rtx x1, rtx x2, rtx x3)
1297 : : {
1298 : 425 : rtx res = maybe_gen_sse4_1_insertps (arg0, x0, x1, x2, x3);
1299 : 425 : gcc_assert (res);
1300 : 425 : return res;
1301 : : }
1302 : :
1303 : : extern insn_code maybe_code_for_vec_set_0 (machine_mode);
1304 : : inline insn_code
1305 : : code_for_vec_set_0 (machine_mode arg0)
1306 : : {
1307 : : insn_code code = maybe_code_for_vec_set_0 (arg0);
1308 : : gcc_assert (code != CODE_FOR_nothing);
1309 : : return code;
1310 : : }
1311 : :
1312 : : extern rtx maybe_gen_vec_set_0 (machine_mode, rtx, rtx, rtx);
1313 : : inline rtx
1314 : 3 : gen_vec_set_0 (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1315 : : {
1316 : 3 : rtx res = maybe_gen_vec_set_0 (arg0, x0, x1, x2);
1317 : 3 : gcc_assert (res);
1318 : 3 : return res;
1319 : : }
1320 : :
1321 : : extern insn_code maybe_code_for_vec_extract_lo (machine_mode);
1322 : : inline insn_code
1323 : : code_for_vec_extract_lo (machine_mode arg0)
1324 : : {
1325 : : insn_code code = maybe_code_for_vec_extract_lo (arg0);
1326 : : gcc_assert (code != CODE_FOR_nothing);
1327 : : return code;
1328 : : }
1329 : :
1330 : : extern rtx maybe_gen_vec_extract_lo (machine_mode, rtx, rtx);
1331 : : inline rtx
1332 : 280 : gen_vec_extract_lo (machine_mode arg0, rtx x0, rtx x1)
1333 : : {
1334 : 280 : rtx res = maybe_gen_vec_extract_lo (arg0, x0, x1);
1335 : 280 : gcc_assert (res);
1336 : 280 : return res;
1337 : : }
1338 : :
1339 : : extern insn_code maybe_code_for_vec_extract_hi (machine_mode);
1340 : : inline insn_code
1341 : : code_for_vec_extract_hi (machine_mode arg0)
1342 : : {
1343 : : insn_code code = maybe_code_for_vec_extract_hi (arg0);
1344 : : gcc_assert (code != CODE_FOR_nothing);
1345 : : return code;
1346 : : }
1347 : :
1348 : : extern rtx maybe_gen_vec_extract_hi (machine_mode, rtx, rtx);
1349 : : inline rtx
1350 : 239 : gen_vec_extract_hi (machine_mode arg0, rtx x0, rtx x1)
1351 : : {
1352 : 239 : rtx res = maybe_gen_vec_extract_hi (arg0, x0, x1);
1353 : 239 : gcc_assert (res);
1354 : 239 : return res;
1355 : : }
1356 : :
1357 : : extern insn_code maybe_code_for_vec_interleave_high (machine_mode);
1358 : : inline insn_code
1359 : : code_for_vec_interleave_high (machine_mode arg0)
1360 : : {
1361 : : insn_code code = maybe_code_for_vec_interleave_high (arg0);
1362 : : gcc_assert (code != CODE_FOR_nothing);
1363 : : return code;
1364 : : }
1365 : :
1366 : : extern rtx maybe_gen_vec_interleave_high (machine_mode, rtx, rtx, rtx);
1367 : : inline rtx
1368 : 0 : gen_vec_interleave_high (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1369 : : {
1370 : 0 : rtx res = maybe_gen_vec_interleave_high (arg0, x0, x1, x2);
1371 : 0 : gcc_assert (res);
1372 : 0 : return res;
1373 : : }
1374 : :
1375 : : extern insn_code maybe_code_for_vec_interleave_low (machine_mode);
1376 : : inline insn_code
1377 : : code_for_vec_interleave_low (machine_mode arg0)
1378 : : {
1379 : : insn_code code = maybe_code_for_vec_interleave_low (arg0);
1380 : : gcc_assert (code != CODE_FOR_nothing);
1381 : : return code;
1382 : : }
1383 : :
1384 : : extern rtx maybe_gen_vec_interleave_low (machine_mode, rtx, rtx, rtx);
1385 : : inline rtx
1386 : 1 : gen_vec_interleave_low (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1387 : : {
1388 : 1 : rtx res = maybe_gen_vec_interleave_low (arg0, x0, x1, x2);
1389 : 1 : gcc_assert (res);
1390 : 1 : return res;
1391 : : }
1392 : :
1393 : : extern insn_code maybe_code_for_sse3_monitor (machine_mode);
1394 : : inline insn_code
1395 : : code_for_sse3_monitor (machine_mode arg0)
1396 : : {
1397 : : insn_code code = maybe_code_for_sse3_monitor (arg0);
1398 : : gcc_assert (code != CODE_FOR_nothing);
1399 : : return code;
1400 : : }
1401 : :
1402 : : extern rtx maybe_gen_sse3_monitor (machine_mode, rtx, rtx, rtx);
1403 : : inline rtx
1404 : 26 : gen_sse3_monitor (machine_mode arg0, rtx x0, rtx x1, rtx x2)
1405 : : {
1406 : 26 : rtx res = maybe_gen_sse3_monitor (arg0, x0, x1, x2);
1407 : 26 : gcc_assert (res);
1408 : 26 : return res;
1409 : : }
1410 : : #endif
1411 : :
1412 : : extern const struct convert_optab_libcall_d convlib_def[NUM_CONVLIB_OPTABS];
1413 : : extern const struct optab_libcall_d normlib_def[NUM_NORMLIB_OPTABS];
1414 : :
1415 : : /* Returns the active icode for the given (encoded) optab. */
1416 : : extern enum insn_code raw_optab_handler (unsigned);
1417 : : extern bool swap_optab_enable (optab, machine_mode, bool);
1418 : :
1419 : : /* Target-dependent globals. */
1420 : : struct target_optabs {
1421 : : /* Patterns that are used by optabs that are enabled for this target. */
1422 : : bool pat_enable[NUM_OPTAB_PATTERNS];
1423 : :
1424 : : /* Index VOIDmode caches if the target supports vec_gather_load for any
1425 : : vector mode. Every other index X caches specifically for mode X.
1426 : : 1 means yes, -1 means no. */
1427 : : signed char supports_vec_gather_load[NUM_MACHINE_MODES];
1428 : : signed char supports_vec_scatter_store[NUM_MACHINE_MODES];
1429 : : };
1430 : : extern void init_all_optabs (struct target_optabs *);
1431 : : extern bool partial_vectors_supported_p (void);
1432 : :
1433 : : extern struct target_optabs default_target_optabs;
1434 : : extern struct target_optabs *this_fn_optabs;
1435 : : #if SWITCHABLE_TARGET
1436 : : extern struct target_optabs *this_target_optabs;
1437 : : #else
1438 : : #define this_target_optabs (&default_target_optabs)
1439 : : #endif
1440 : : #endif
|