Lines Matching refs:mode

59 direct_optab_handler (convert_optab optab, machine_mode mode,  in direct_optab_handler()  argument
62 insn_code icode = direct_optab_handler (optab, mode); in direct_optab_handler()
64 || !targetm.optab_supported_p (optab, mode, mode, opt_type)) in direct_optab_handler()
83 machine_mode mode, in get_traditional_extraction_insn() argument
89 machine_mode struct_mode = data->operand[struct_op].mode; in get_traditional_extraction_insn()
92 if (mode != struct_mode) in get_traditional_extraction_insn()
95 machine_mode field_mode = data->operand[field_op].mode; in get_traditional_extraction_insn()
99 machine_mode pos_mode = data->operand[struct_op + 2].mode; in get_traditional_extraction_insn()
125 machine_mode mode, direct_optab reg_optab, in get_optab_extraction_insn() argument
129 enum insn_code icode = direct_optab_handler (optab, mode); in get_optab_extraction_insn()
135 machine_mode pos_mode = data->operand[pos_op].mode; in get_optab_extraction_insn()
140 insn->field_mode = as_a <scalar_int_mode> (mode); in get_optab_extraction_insn()
157 machine_mode mode) in get_extraction_insn() argument
163 && get_traditional_extraction_insn (insn, type, mode, in get_extraction_insn()
166 return get_optab_extraction_insn (insn, type, mode, insv_optab, in get_extraction_insn()
171 && get_traditional_extraction_insn (insn, type, mode, in get_extraction_insn()
174 return get_optab_extraction_insn (insn, type, mode, extv_optab, in get_extraction_insn()
179 && get_traditional_extraction_insn (insn, type, mode, in get_extraction_insn()
182 return get_optab_extraction_insn (insn, type, mode, extzv_optab, in get_extraction_insn()
210 scalar_int_mode mode = mode_iter.require (); in get_best_extraction_insn() local
211 if (get_extraction_insn (insn, pattern, type, mode)) in get_best_extraction_insn()
213 FOR_EACH_MODE_FROM (mode_iter, mode) in get_best_extraction_insn()
215 mode = mode_iter.require (); in get_best_extraction_insn()
216 if (maybe_gt (GET_MODE_SIZE (mode), GET_MODE_SIZE (field_mode)) in get_best_extraction_insn()
220 get_extraction_insn (insn, pattern, type, mode); in get_best_extraction_insn()
344 can_conditionally_move_p (machine_mode mode) in can_conditionally_move_p() argument
346 return direct_optab_handler (movcc_optab, mode) != CODE_FOR_nothing; in can_conditionally_move_p()
355 qimode_for_vec_perm (machine_mode mode) in qimode_for_vec_perm() argument
358 if (GET_MODE_INNER (mode) != QImode in qimode_for_vec_perm()
359 && mode_for_vector (QImode, GET_MODE_SIZE (mode)).exists (&qimode) in qimode_for_vec_perm()
369 selector_fits_mode_p (machine_mode mode, const vec_perm_indices &sel) in selector_fits_mode_p() argument
371 unsigned HOST_WIDE_INT mask = GET_MODE_MASK (GET_MODE_INNER (mode)); in selector_fits_mode_p()
381 can_vec_perm_var_p (machine_mode mode) in can_vec_perm_var_p() argument
385 if (!VECTOR_MODE_P (mode)) in can_vec_perm_var_p()
388 if (direct_optab_handler (vec_perm_optab, mode) != CODE_FOR_nothing) in can_vec_perm_var_p()
393 if (!qimode_for_vec_perm (mode).exists (&qimode) in can_vec_perm_var_p()
402 if (GET_MODE_UNIT_SIZE (mode) > 2 in can_vec_perm_var_p()
403 && optab_handler (ashl_optab, mode) == CODE_FOR_nothing in can_vec_perm_var_p()
404 && optab_handler (vashl_optab, mode) == CODE_FOR_nothing) in can_vec_perm_var_p()
422 can_vec_perm_const_p (machine_mode mode, const vec_perm_indices &sel, in can_vec_perm_const_p() argument
427 if (!VECTOR_MODE_P (mode)) in can_vec_perm_const_p()
431 if (allow_variable_p && selector_fits_mode_p (mode, sel)) in can_vec_perm_const_p()
433 if (direct_optab_handler (vec_perm_optab, mode) != CODE_FOR_nothing) in can_vec_perm_const_p()
440 if (qimode_for_vec_perm (mode).exists (&qimode)) in can_vec_perm_const_p()
443 qimode_indices.new_expanded_vector (sel, GET_MODE_UNIT_SIZE (mode)); in can_vec_perm_const_p()
453 if (targetm.vectorize.vec_perm_const (mode, NULL_RTX, NULL_RTX, in can_vec_perm_const_p()
512 can_mult_highpart_p (machine_mode mode, bool uns_p) in can_mult_highpart_p() argument
517 if (optab_handler (op, mode) != CODE_FOR_nothing) in can_mult_highpart_p()
521 if (GET_MODE_CLASS (mode) != MODE_VECTOR_INT) in can_mult_highpart_p()
524 poly_int64 nunits = GET_MODE_NUNITS (mode); in can_mult_highpart_p()
527 if (optab_handler (op, mode) != CODE_FOR_nothing) in can_mult_highpart_p()
530 if (optab_handler (op, mode) != CODE_FOR_nothing) in can_mult_highpart_p()
539 if (can_vec_perm_const_p (mode, indices)) in can_mult_highpart_p()
545 if (optab_handler (op, mode) != CODE_FOR_nothing) in can_mult_highpart_p()
548 if (optab_handler (op, mode) != CODE_FOR_nothing) in can_mult_highpart_p()
555 if (can_vec_perm_const_p (mode, indices)) in can_mult_highpart_p()
566 can_vec_mask_load_store_p (machine_mode mode, in can_vec_mask_load_store_p() argument
574 if (VECTOR_MODE_P (mode)) in can_vec_mask_load_store_p()
575 return convert_optab_handler (op, mode, mask_mode) != CODE_FOR_nothing; in can_vec_mask_load_store_p()
583 if (!is_a <scalar_mode> (mode, &smode)) in can_vec_mask_load_store_p()
615 can_compare_and_swap_p (machine_mode mode, bool allow_libcall) in can_compare_and_swap_p() argument
620 icode = direct_optab_handler (atomic_compare_and_swap_optab, mode); in can_compare_and_swap_p()
625 icode = optab_handler (sync_compare_and_swap_optab, mode); in can_compare_and_swap_p()
628 if (allow_libcall && optab_libfunc (sync_compare_and_swap_optab, mode)) in can_compare_and_swap_p()
638 can_atomic_exchange_p (machine_mode mode, bool allow_libcall) in can_atomic_exchange_p() argument
643 icode = direct_optab_handler (atomic_exchange_optab, mode); in can_atomic_exchange_p()
651 return can_compare_and_swap_p (mode, allow_libcall); in can_atomic_exchange_p()
658 can_atomic_load_p (machine_mode mode) in can_atomic_load_p() argument
663 icode = direct_optab_handler (atomic_load_optab, mode); in can_atomic_load_p()
670 return known_le (GET_MODE_PRECISION (mode), BITS_PER_WORD); in can_atomic_load_p()