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