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