Lines Matching refs:icode

584   enum insn_code icode;  in expand_widen_pattern_expr()  local
594 icode = find_widening_optab_handler (widen_pattern_optab, in expand_widen_pattern_expr()
598 icode = optab_handler (widen_pattern_optab, tmode0); in expand_widen_pattern_expr()
599 gcc_assert (icode != CODE_FOR_nothing); in expand_widen_pattern_expr()
625 expand_insn (icode, op, eops); in expand_widen_pattern_expr()
645 enum insn_code icode = optab_handler (ternary_optab, mode); in expand_ternary_op() local
653 expand_insn (icode, 4, ops); in expand_ternary_op()
701 enum insn_code icode; in expand_vec_shift_expr() local
720 icode = optab_handler (shift_optab, mode); in expand_vec_shift_expr()
721 gcc_assert (icode != CODE_FOR_nothing); in expand_vec_shift_expr()
729 expand_insn (icode, 3, eops); in expand_vec_shift_expr()
741 enum insn_code icode; in expand_vector_broadcast() local
759 icode = optab_handler (vec_init_optab, vmode); in expand_vector_broadcast()
760 if (icode == CODE_FOR_nothing) in expand_vector_broadcast()
764 emit_insn (GEN_FCN (icode) (ret, gen_rtx_PARALLEL (vmode, vec))); in expand_vector_broadcast()
1358 enum insn_code icode = find_widening_optab_handler (binoptab, mode, in expand_binop_directly() local
1360 enum machine_mode xmode0 = insn_data[(int) icode].operand[1].mode; in expand_binop_directly()
1361 enum machine_mode xmode1 = insn_data[(int) icode].operand[2].mode; in expand_binop_directly()
1429 tmp_mode = insn_data[(int) icode].operand[0].mode; in expand_binop_directly()
1442 pat = maybe_gen_insn (icode, 3, ops); in expand_binop_directly()
2291 enum insn_code icode = optab_handler (unoptab, mode); in expand_twoval_unop() local
2296 if (maybe_expand_insn (icode, 3, ops)) in expand_twoval_unop()
2365 enum insn_code icode = optab_handler (binoptab, mode); in expand_twoval_binop() local
2366 enum machine_mode mode0 = insn_data[icode].operand[1].mode; in expand_twoval_binop()
2367 enum machine_mode mode1 = insn_data[icode].operand[2].mode; in expand_twoval_binop()
2378 if (maybe_expand_insn (icode, 4, ops)) in expand_twoval_binop()
2951 enum insn_code icode = optab_handler (unoptab, mode); in expand_unop_direct() local
2957 pat = maybe_gen_insn (icode, 2, ops); in expand_unop_direct()
3456 enum insn_code icode; in expand_copysign_absneg() local
3464 icode = optab_handler (signbit_optab, mode); in expand_copysign_absneg()
3465 if (icode != CODE_FOR_nothing) in expand_copysign_absneg()
3467 imode = insn_data[(int) icode].operand[0].mode; in expand_copysign_absneg()
3469 emit_unop_insn (icode, sign, op1, UNKNOWN); in expand_copysign_absneg()
3691 maybe_emit_unop_insn (enum insn_code icode, rtx target, rtx op0, in maybe_emit_unop_insn() argument
3699 pat = maybe_gen_insn (icode, 2, ops); in maybe_emit_unop_insn()
3719 emit_unop_insn (enum insn_code icode, rtx target, rtx op0, enum rtx_code code) in emit_unop_insn() argument
3721 bool ok = maybe_emit_unop_insn (icode, target, op0, code); in emit_unop_insn()
3890 enum insn_code icode; in can_compare_p() local
3893 && (icode = optab_handler (cbranch_optab, mode)) != CODE_FOR_nothing in can_compare_p()
3894 && insn_operand_matches (icode, 0, test)) in can_compare_p()
3897 && (icode = optab_handler (cstore_optab, mode)) != CODE_FOR_nothing in can_compare_p()
3898 && insn_operand_matches (icode, 1, test)) in can_compare_p()
4056 enum insn_code icode; in prepare_cmp_insn() local
4057 icode = optab_handler (cbranch_optab, cmp_mode); in prepare_cmp_insn()
4058 if (icode != CODE_FOR_nothing in prepare_cmp_insn()
4059 && insn_operand_matches (icode, 0, test)) in prepare_cmp_insn()
4062 rtx op0 = prepare_operand (icode, x, 1, mode, cmp_mode, unsignedp); in prepare_cmp_insn()
4063 rtx op1 = prepare_operand (icode, y, 2, mode, cmp_mode, unsignedp); in prepare_cmp_insn()
4065 && insn_operand_matches (icode, 1, op0) in prepare_cmp_insn()
4066 && insn_operand_matches (icode, 2, op1)) in prepare_cmp_insn()
4147 prepare_operand (enum insn_code icode, rtx x, int opnum, enum machine_mode mode, in prepare_operand() argument
4153 if (!insn_operand_matches (icode, opnum, x)) in prepare_operand()
4157 x = copy_to_mode_reg (insn_data[(int) icode].operand[opnum].mode, x); in prepare_operand()
4171 enum insn_code icode; in emit_cmp_and_jump_insn_1() local
4175 icode = optab_handler (cbranch_optab, optab_mode); in emit_cmp_and_jump_insn_1()
4177 gcc_assert (icode != CODE_FOR_nothing); in emit_cmp_and_jump_insn_1()
4178 gcc_assert (insn_operand_matches (icode, 0, test)); in emit_cmp_and_jump_insn_1()
4179 emit_jump_insn (GEN_FCN (icode) (test, XEXP (test, 0), XEXP (test, 1), label)); in emit_cmp_and_jump_insn_1()
4396 enum insn_code icode; in emit_conditional_move() local
4434 icode = direct_optab_handler (movcc_optab, mode); in emit_conditional_move()
4436 if (icode == CODE_FOR_nothing) in emit_conditional_move()
4464 if (maybe_expand_insn (icode, 4, ops)) in emit_conditional_move()
4514 enum insn_code icode; in emit_conditional_add() local
4552 icode = optab_handler (addcc_optab, mode); in emit_conditional_add()
4554 if (icode == CODE_FOR_nothing) in emit_conditional_add()
4582 if (maybe_expand_insn (icode, 4, ops)) in emit_conditional_add()
4602 enum insn_code icode = optab_handler (add_optab, GET_MODE (x)); in gen_add2_insn() local
4604 gcc_assert (insn_operand_matches (icode, 0, x)); in gen_add2_insn()
4605 gcc_assert (insn_operand_matches (icode, 1, x)); in gen_add2_insn()
4606 gcc_assert (insn_operand_matches (icode, 2, y)); in gen_add2_insn()
4608 return GEN_FCN (icode) (x, x, y); in gen_add2_insn()
4617 enum insn_code icode = optab_handler (add_optab, GET_MODE (r0)); in gen_add3_insn() local
4619 if (icode == CODE_FOR_nothing in gen_add3_insn()
4620 || !insn_operand_matches (icode, 0, r0) in gen_add3_insn()
4621 || !insn_operand_matches (icode, 1, r1) in gen_add3_insn()
4622 || !insn_operand_matches (icode, 2, c)) in gen_add3_insn()
4625 return GEN_FCN (icode) (r0, r1, c); in gen_add3_insn()
4631 enum insn_code icode; in have_add2_insn() local
4635 icode = optab_handler (add_optab, GET_MODE (x)); in have_add2_insn()
4637 if (icode == CODE_FOR_nothing) in have_add2_insn()
4640 if (!insn_operand_matches (icode, 0, x) in have_add2_insn()
4641 || !insn_operand_matches (icode, 1, x) in have_add2_insn()
4642 || !insn_operand_matches (icode, 2, y)) in have_add2_insn()
4653 enum insn_code icode = optab_handler (sub_optab, GET_MODE (x)); in gen_sub2_insn() local
4655 gcc_assert (insn_operand_matches (icode, 0, x)); in gen_sub2_insn()
4656 gcc_assert (insn_operand_matches (icode, 1, x)); in gen_sub2_insn()
4657 gcc_assert (insn_operand_matches (icode, 2, y)); in gen_sub2_insn()
4659 return GEN_FCN (icode) (x, x, y); in gen_sub2_insn()
4668 enum insn_code icode = optab_handler (sub_optab, GET_MODE (r0)); in gen_sub3_insn() local
4670 if (icode == CODE_FOR_nothing in gen_sub3_insn()
4671 || !insn_operand_matches (icode, 0, r0) in gen_sub3_insn()
4672 || !insn_operand_matches (icode, 1, r1) in gen_sub3_insn()
4673 || !insn_operand_matches (icode, 2, c)) in gen_sub3_insn()
4676 return GEN_FCN (icode) (r0, r1, c); in gen_sub3_insn()
4682 enum insn_code icode; in have_sub2_insn() local
4686 icode = optab_handler (sub_optab, GET_MODE (x)); in have_sub2_insn()
4688 if (icode == CODE_FOR_nothing) in have_sub2_insn()
4691 if (!insn_operand_matches (icode, 0, x) in have_sub2_insn()
4692 || !insn_operand_matches (icode, 1, x) in have_sub2_insn()
4693 || !insn_operand_matches (icode, 2, y)) in have_sub2_insn()
4739 enum insn_code icode = can_extend_p (mto, mfrom, unsignedp); in gen_extend_insn() local
4740 return GEN_FCN (icode) (x, y); in gen_extend_insn()
4757 enum insn_code icode; in can_fix_p() local
4760 icode = convert_optab_handler (tab, fixmode, fltmode); in can_fix_p()
4761 if (icode != CODE_FOR_nothing) in can_fix_p()
4764 return icode; in can_fix_p()
4771 icode = convert_optab_handler (tab, fixmode, fltmode); in can_fix_p()
4772 if (icode != CODE_FOR_nothing in can_fix_p()
4776 return icode; in can_fix_p()
4856 enum insn_code icode; in expand_float() local
4880 icode = can_float_p (fmode, imode, unsignedp); in expand_float()
4881 if (icode == CODE_FOR_nothing && unsignedp) in expand_float()
4887 icode = scode, doing_unsigned = 0; in expand_float()
4890 if (icode != CODE_FOR_nothing) in expand_float()
4898 emit_unop_insn (icode, target, from, in expand_float()
5057 enum insn_code icode; in expand_fix() local
5074 icode = can_fix_p (imode, fmode, unsignedp, &must_trunc); in expand_fix()
5075 if (icode == CODE_FOR_nothing && imode != GET_MODE (to) && unsignedp) in expand_fix()
5076 icode = can_fix_p (imode, fmode, 0, &must_trunc), doing_unsigned = 0; in expand_fix()
5078 if (icode != CODE_FOR_nothing) in expand_fix()
5094 if (maybe_emit_unop_insn (icode, target, from, in expand_fix()
5290 enum insn_code icode; in expand_sfix_optab() local
5304 icode = convert_optab_handler (tab, imode, fmode); in expand_sfix_optab()
5305 if (icode != CODE_FOR_nothing) in expand_sfix_optab()
5314 if (!maybe_emit_unop_insn (icode, target, from, UNKNOWN)) in expand_sfix_optab()
6660 enum insn_code icode; in gen_cond_trap() local
6667 icode = optab_handler (ctrap_optab, mode); in gen_cond_trap()
6668 if (icode == CODE_FOR_nothing) in gen_cond_trap()
6672 if (!insn_operand_matches (icode, 3, tcode)) in gen_cond_trap()
6682 insn = GEN_FCN (icode) (trap_rtx, XEXP (trap_rtx, 0), XEXP (trap_rtx, 1), in gen_cond_trap()
6761 vector_compare_rtx (tree cond, bool unsignedp, enum insn_code icode) in vector_compare_rtx() argument
6784 if (!maybe_legitimize_operands (icode, 4, 2, ops)) in vector_compare_rtx()
6846 expand_vec_perm_1 (enum insn_code icode, rtx target, in expand_vec_perm_1() argument
6860 if (!insn_operand_matches (icode, 1, v0)) in expand_vec_perm_1()
6862 gcc_checking_assert (insn_operand_matches (icode, 1, v0)); in expand_vec_perm_1()
6863 gcc_checking_assert (insn_operand_matches (icode, 2, v0)); in expand_vec_perm_1()
6874 if (maybe_expand_insn (icode, 4, ops)) in expand_vec_perm_1()
6885 enum insn_code icode; in expand_vec_perm() local
6912 icode = direct_optab_handler (vec_perm_const_optab, mode); in expand_vec_perm()
6913 if (icode != CODE_FOR_nothing) in expand_vec_perm()
6915 tmp = expand_vec_perm_1 (icode, target, v0, v1, sel); in expand_vec_perm()
6937 icode = direct_optab_handler (vec_perm_const_optab, qimode); in expand_vec_perm()
6938 if (icode != CODE_FOR_nothing) in expand_vec_perm()
6940 tmp = expand_vec_perm_1 (icode, gen_lowpart (qimode, target), in expand_vec_perm()
6950 icode = direct_optab_handler (vec_perm_optab, mode); in expand_vec_perm()
6951 if (icode != CODE_FOR_nothing) in expand_vec_perm()
6953 tmp = expand_vec_perm_1 (icode, target, v0, v1, sel); in expand_vec_perm()
6962 icode = direct_optab_handler (vec_perm_optab, qimode); in expand_vec_perm()
6963 if (icode == CODE_FOR_nothing) in expand_vec_perm()
7005 tmp = expand_vec_perm_1 (icode, gen_lowpart (qimode, target), in expand_vec_perm()
7019 enum insn_code icode = CODE_FOR_nothing; in get_vcond_icode() local
7021 icode = convert_optab_handler (vcondu_optab, vmode, cmode); in get_vcond_icode()
7023 icode = convert_optab_handler (vcond_optab, vmode, cmode); in get_vcond_icode()
7024 return icode; in get_vcond_icode()
7052 enum insn_code icode; in expand_vec_cond_expr() local
7066 icode = get_vcond_icode (mode, cmp_op_mode, unsignedp); in expand_vec_cond_expr()
7067 if (icode == CODE_FOR_nothing) in expand_vec_cond_expr()
7070 comparison = vector_compare_rtx (op0, unsignedp, icode); in expand_vec_cond_expr()
7080 expand_insn (icode, 6, ops); in expand_vec_cond_expr()
7090 enum insn_code icode; in can_compare_and_swap_p() local
7093 icode = direct_optab_handler (atomic_compare_and_swap_optab, mode); in can_compare_and_swap_p()
7094 if (icode != CODE_FOR_nothing) in can_compare_and_swap_p()
7098 icode = optab_handler (sync_compare_and_swap_optab, mode); in can_compare_and_swap_p()
7099 if (icode != CODE_FOR_nothing) in can_compare_and_swap_p()
7113 enum insn_code icode; in can_atomic_exchange_p() local
7116 icode = direct_optab_handler (atomic_exchange_optab, mode); in can_atomic_exchange_p()
7117 if (icode != CODE_FOR_nothing) in can_atomic_exchange_p()
7205 enum insn_code icode; in maybe_emit_atomic_exchange() local
7208 icode = direct_optab_handler (atomic_exchange_optab, mode); in maybe_emit_atomic_exchange()
7209 if (icode != CODE_FOR_nothing) in maybe_emit_atomic_exchange()
7217 if (maybe_expand_insn (icode, 4, ops)) in maybe_emit_atomic_exchange()
7235 enum insn_code icode; in maybe_emit_sync_lock_test_and_set() local
7238 icode = optab_handler (sync_lock_test_and_set_optab, mode); in maybe_emit_sync_lock_test_and_set()
7249 if (icode != CODE_FOR_nothing) in maybe_emit_sync_lock_test_and_set()
7255 if (maybe_expand_insn (icode, 3, ops)) in maybe_emit_sync_lock_test_and_set()
7476 enum insn_code icode; in expand_atomic_compare_and_swap() local
7492 icode = direct_optab_handler (atomic_compare_and_swap_optab, mode); in expand_atomic_compare_and_swap()
7493 if (icode != CODE_FOR_nothing) in expand_atomic_compare_and_swap()
7495 enum machine_mode bool_mode = insn_data[icode].operand[0].mode; in expand_atomic_compare_and_swap()
7512 expand_insn (icode, 8, ops); in expand_atomic_compare_and_swap()
7522 icode = optab_handler (sync_compare_and_swap_optab, mode); in expand_atomic_compare_and_swap()
7523 if (icode != CODE_FOR_nothing) in expand_atomic_compare_and_swap()
7531 if (!maybe_expand_insn (icode, 4, ops)) in expand_atomic_compare_and_swap()
7665 enum insn_code icode; in expand_atomic_load() local
7668 icode = direct_optab_handler (atomic_load_optab, mode); in expand_atomic_load()
7669 if (icode != CODE_FOR_nothing) in expand_atomic_load()
7676 if (maybe_expand_insn (icode, 3, ops)) in expand_atomic_load()
7721 enum insn_code icode; in expand_atomic_store() local
7725 icode = direct_optab_handler (atomic_store_optab, mode); in expand_atomic_store()
7726 if (icode != CODE_FOR_nothing) in expand_atomic_store()
7731 if (maybe_expand_insn (icode, 3, ops)) in expand_atomic_store()
7738 icode = direct_optab_handler (sync_lock_release_optab, mode); in expand_atomic_store()
7739 if (icode != CODE_FOR_nothing) in expand_atomic_store()
7743 if (maybe_expand_insn (icode, 2, ops)) in expand_atomic_store()
7917 enum insn_code icode; in maybe_emit_op() local
7926 icode = direct_optab_handler (optab->mem_no_result, mode); in maybe_emit_op()
7932 icode = direct_optab_handler (optab->no_result, mode); in maybe_emit_op()
7941 icode = direct_optab_handler (after ? optab->mem_fetch_after in maybe_emit_op()
7948 icode = optab_handler (after ? optab->fetch_after in maybe_emit_op()
7954 if (icode == CODE_FOR_nothing) in maybe_emit_op()
7961 if (maybe_expand_insn (icode, num_ops, ops)) in maybe_emit_op()
8129 insn_operand_matches (enum insn_code icode, unsigned int opno, rtx operand) in insn_operand_matches() argument
8131 return (!insn_data[(int) icode].operand[opno].predicate in insn_operand_matches()
8132 || (insn_data[(int) icode].operand[opno].predicate in insn_operand_matches()
8133 (operand, insn_data[(int) icode].operand[opno].mode))); in insn_operand_matches()
8157 maybe_legitimize_operand_same_code (enum insn_code icode, unsigned int opno, in maybe_legitimize_operand_same_code() argument
8161 if (insn_operand_matches (icode, opno, op->value)) in maybe_legitimize_operand_same_code()
8168 if (insn_data[(int) icode].operand[opno].allows_mem && MEM_P (op->value)) in maybe_legitimize_operand_same_code()
8183 if (insn_operand_matches (icode, opno, mem)) in maybe_legitimize_operand_same_code()
8199 maybe_legitimize_operand (enum insn_code icode, unsigned int opno, in maybe_legitimize_operand() argument
8211 result = maybe_legitimize_operand_same_code (icode, opno, op); in maybe_legitimize_operand()
8220 && maybe_legitimize_operand_same_code (icode, opno, op)) in maybe_legitimize_operand()
8231 if (maybe_legitimize_operand_same_code (icode, opno, op)) in maybe_legitimize_operand()
8249 imode = insn_data[(int) icode].operand[opno].mode; in maybe_legitimize_operand()
8263 mode = insn_data[(int) icode].operand[opno].mode; in maybe_legitimize_operand()
8268 return insn_operand_matches (icode, opno, op->value); in maybe_legitimize_operand()
8288 maybe_legitimize_operands (enum insn_code icode, unsigned int opno, in maybe_legitimize_operands() argument
8296 if (!maybe_legitimize_operand (icode, opno + i, &ops[i])) in maybe_legitimize_operands()
8310 maybe_gen_insn (enum insn_code icode, unsigned int nops, in maybe_gen_insn() argument
8313 gcc_assert (nops == (unsigned int) insn_data[(int) icode].n_generator_args); in maybe_gen_insn()
8314 if (!maybe_legitimize_operands (icode, 0, nops, ops)) in maybe_gen_insn()
8320 return GEN_FCN (icode) (ops[0].value); in maybe_gen_insn()
8322 return GEN_FCN (icode) (ops[0].value, ops[1].value); in maybe_gen_insn()
8324 return GEN_FCN (icode) (ops[0].value, ops[1].value, ops[2].value); in maybe_gen_insn()
8326 return GEN_FCN (icode) (ops[0].value, ops[1].value, ops[2].value, in maybe_gen_insn()
8329 return GEN_FCN (icode) (ops[0].value, ops[1].value, ops[2].value, in maybe_gen_insn()
8332 return GEN_FCN (icode) (ops[0].value, ops[1].value, ops[2].value, in maybe_gen_insn()
8335 return GEN_FCN (icode) (ops[0].value, ops[1].value, ops[2].value, in maybe_gen_insn()
8339 return GEN_FCN (icode) (ops[0].value, ops[1].value, ops[2].value, in maybe_gen_insn()
8350 maybe_expand_insn (enum insn_code icode, unsigned int nops, in maybe_expand_insn() argument
8353 rtx pat = maybe_gen_insn (icode, nops, ops); in maybe_expand_insn()
8365 maybe_expand_jump_insn (enum insn_code icode, unsigned int nops, in maybe_expand_jump_insn() argument
8368 rtx pat = maybe_gen_insn (icode, nops, ops); in maybe_expand_jump_insn()
8381 expand_insn (enum insn_code icode, unsigned int nops, in expand_insn() argument
8384 if (!maybe_expand_insn (icode, nops, ops)) in expand_insn()
8391 expand_jump_insn (enum insn_code icode, unsigned int nops, in expand_jump_insn() argument
8394 if (!maybe_expand_jump_insn (icode, nops, ops)) in expand_jump_insn()