Lines Matching refs:ops

153   class expand_operand ops[2];  in expand_load_lanes_optab_fn()  local
167 create_output_operand (&ops[0], target, TYPE_MODE (type)); in expand_load_lanes_optab_fn()
168 create_fixed_operand (&ops[1], mem); in expand_load_lanes_optab_fn()
169 expand_insn (get_multi_vector_move (type, optab), 2, ops); in expand_load_lanes_optab_fn()
170 if (!rtx_equal_p (target, ops[0].value)) in expand_load_lanes_optab_fn()
171 emit_move_insn (target, ops[0].value); in expand_load_lanes_optab_fn()
179 class expand_operand ops[2]; in expand_store_lanes_optab_fn() local
193 create_fixed_operand (&ops[0], target); in expand_store_lanes_optab_fn()
194 create_input_operand (&ops[1], reg, TYPE_MODE (type)); in expand_store_lanes_optab_fn()
195 expand_insn (get_multi_vector_move (type, optab), 2, ops); in expand_store_lanes_optab_fn()
233 class expand_operand ops[3]; in expand_GOMP_SIMT_ENTER_ALLOC() local
234 create_output_operand (&ops[0], target, Pmode); in expand_GOMP_SIMT_ENTER_ALLOC()
235 create_input_operand (&ops[1], size, Pmode); in expand_GOMP_SIMT_ENTER_ALLOC()
236 create_input_operand (&ops[2], align, Pmode); in expand_GOMP_SIMT_ENTER_ALLOC()
238 expand_insn (targetm.code_for_omp_simt_enter, 3, ops); in expand_GOMP_SIMT_ENTER_ALLOC()
248 class expand_operand ops[1]; in expand_GOMP_SIMT_EXIT() local
249 create_input_operand (&ops[0], arg, Pmode); in expand_GOMP_SIMT_EXIT()
251 expand_insn (targetm.code_for_omp_simt_exit, 1, ops); in expand_GOMP_SIMT_EXIT()
291 class expand_operand ops[2]; in expand_GOMP_SIMT_LAST_LANE() local
292 create_output_operand (&ops[0], target, mode); in expand_GOMP_SIMT_LAST_LANE()
293 create_input_operand (&ops[1], cond, mode); in expand_GOMP_SIMT_LAST_LANE()
295 expand_insn (targetm.code_for_omp_simt_last_lane, 2, ops); in expand_GOMP_SIMT_LAST_LANE()
310 class expand_operand ops[2]; in expand_GOMP_SIMT_ORDERED_PRED() local
311 create_output_operand (&ops[0], target, mode); in expand_GOMP_SIMT_ORDERED_PRED()
312 create_input_operand (&ops[1], ctr, mode); in expand_GOMP_SIMT_ORDERED_PRED()
314 expand_insn (targetm.code_for_omp_simt_ordered, 2, ops); in expand_GOMP_SIMT_ORDERED_PRED()
330 class expand_operand ops[2]; in expand_GOMP_SIMT_VOTE_ANY() local
331 create_output_operand (&ops[0], target, mode); in expand_GOMP_SIMT_VOTE_ANY()
332 create_input_operand (&ops[1], cond, mode); in expand_GOMP_SIMT_VOTE_ANY()
334 expand_insn (targetm.code_for_omp_simt_vote_any, 2, ops); in expand_GOMP_SIMT_VOTE_ANY()
351 class expand_operand ops[3]; in expand_GOMP_SIMT_XCHG_BFLY() local
352 create_output_operand (&ops[0], target, mode); in expand_GOMP_SIMT_XCHG_BFLY()
353 create_input_operand (&ops[1], src, mode); in expand_GOMP_SIMT_XCHG_BFLY()
354 create_input_operand (&ops[2], idx, SImode); in expand_GOMP_SIMT_XCHG_BFLY()
356 expand_insn (targetm.code_for_omp_simt_xchg_bfly, 3, ops); in expand_GOMP_SIMT_XCHG_BFLY()
372 class expand_operand ops[3]; in expand_GOMP_SIMT_XCHG_IDX() local
373 create_output_operand (&ops[0], target, mode); in expand_GOMP_SIMT_XCHG_IDX()
374 create_input_operand (&ops[1], src, mode); in expand_GOMP_SIMT_XCHG_IDX()
375 create_input_operand (&ops[2], idx, SImode); in expand_GOMP_SIMT_XCHG_IDX()
377 expand_insn (targetm.code_for_omp_simt_xchg_idx, 3, ops); in expand_GOMP_SIMT_XCHG_IDX()
780 class expand_operand ops[4]; in expand_addsub_overflow() local
784 create_output_operand (&ops[0], res, mode); in expand_addsub_overflow()
785 create_input_operand (&ops[1], op0, mode); in expand_addsub_overflow()
786 create_input_operand (&ops[2], op1, mode); in expand_addsub_overflow()
787 create_fixed_operand (&ops[3], do_error); in expand_addsub_overflow()
788 if (maybe_expand_insn (icode, 4, ops)) in expand_addsub_overflow()
1001 class expand_operand ops[4]; in expand_addsub_overflow() local
1005 create_output_operand (&ops[0], res, mode); in expand_addsub_overflow()
1006 create_input_operand (&ops[1], op0, mode); in expand_addsub_overflow()
1007 create_input_operand (&ops[2], op1, mode); in expand_addsub_overflow()
1008 create_fixed_operand (&ops[3], do_error); in expand_addsub_overflow()
1009 if (maybe_expand_insn (icode, 4, ops)) in expand_addsub_overflow()
1152 class expand_operand ops[3]; in expand_neg_overflow() local
1156 create_output_operand (&ops[0], res, mode); in expand_neg_overflow()
1157 create_input_operand (&ops[1], op1, mode); in expand_neg_overflow()
1158 create_fixed_operand (&ops[2], do_error); in expand_neg_overflow()
1159 if (maybe_expand_insn (icode, 3, ops)) in expand_neg_overflow()
1339 struct separate_ops ops; in expand_mul_overflow() local
1340 ops.code = MULT_EXPR; in expand_mul_overflow()
1341 ops.type = TREE_TYPE (arg1); in expand_mul_overflow()
1342 ops.op0 = make_tree (ops.type, op0); in expand_mul_overflow()
1343 ops.op1 = make_tree (ops.type, op1); in expand_mul_overflow()
1344 ops.op2 = NULL_TREE; in expand_mul_overflow()
1345 ops.location = loc; in expand_mul_overflow()
1346 res = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1384 struct separate_ops ops; in expand_mul_overflow() local
1385 ops.code = MULT_EXPR; in expand_mul_overflow()
1386 ops.type = TREE_TYPE (arg1); in expand_mul_overflow()
1387 ops.op0 = make_tree (ops.type, op0); in expand_mul_overflow()
1388 ops.op1 = make_tree (ops.type, op1); in expand_mul_overflow()
1389 ops.op2 = NULL_TREE; in expand_mul_overflow()
1390 ops.location = loc; in expand_mul_overflow()
1391 res = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1434 struct separate_ops ops; in expand_mul_overflow() local
1435 ops.code = MULT_EXPR; in expand_mul_overflow()
1436 ops.type in expand_mul_overflow()
1439 ops.op0 = make_tree (ops.type, op0); in expand_mul_overflow()
1440 ops.op1 = make_tree (ops.type, op1); in expand_mul_overflow()
1441 ops.op2 = NULL_TREE; in expand_mul_overflow()
1442 ops.location = loc; in expand_mul_overflow()
1443 res = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1550 class expand_operand ops[4]; in expand_mul_overflow() local
1554 create_output_operand (&ops[0], res, mode); in expand_mul_overflow()
1555 create_input_operand (&ops[1], op0, mode); in expand_mul_overflow()
1556 create_input_operand (&ops[2], op1, mode); in expand_mul_overflow()
1557 create_fixed_operand (&ops[3], do_error); in expand_mul_overflow()
1558 if (maybe_expand_insn (icode, 4, ops)) in expand_mul_overflow()
1578 struct separate_ops ops; in expand_mul_overflow() local
1581 ops.op0 = make_tree (type, op0); in expand_mul_overflow()
1582 ops.op1 = make_tree (type, op1); in expand_mul_overflow()
1583 ops.op2 = NULL_TREE; in expand_mul_overflow()
1584 ops.location = loc; in expand_mul_overflow()
1608 ops.code = WIDEN_MULT_EXPR; in expand_mul_overflow()
1609 ops.type in expand_mul_overflow()
1612 res = expand_expr_real_2 (&ops, NULL_RTX, wmode, EXPAND_NORMAL); in expand_mul_overflow()
1638 ops.code = MULT_HIGHPART_EXPR; in expand_mul_overflow()
1639 ops.type = type; in expand_mul_overflow()
1641 rtx hipart = expand_expr_real_2 (&ops, NULL_RTX, mode, in expand_mul_overflow()
1643 ops.code = MULT_EXPR; in expand_mul_overflow()
1644 res = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1766 ops.op0 = make_tree (halfstype, lopart0); in expand_mul_overflow()
1767 ops.op1 = make_tree (halfstype, lopart1); in expand_mul_overflow()
1768 ops.code = WIDEN_MULT_EXPR; in expand_mul_overflow()
1769 ops.type = type; in expand_mul_overflow()
1771 = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1811 ops.op0 = make_tree (halfutype, lopart0); in expand_mul_overflow()
1812 ops.op1 = make_tree (halfutype, lopart1); in expand_mul_overflow()
1814 = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1816 ops.op0 = make_tree (halfutype, lopart); in expand_mul_overflow()
1817 ops.op1 = make_tree (halfutype, hipart); in expand_mul_overflow()
1819 rtx tem = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1899 ops.code = MULT_EXPR; in expand_mul_overflow()
1900 ops.op0 = make_tree (type, op0); in expand_mul_overflow()
1901 ops.op1 = make_tree (type, op1); in expand_mul_overflow()
1902 tem = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1951 ops.op0 = make_tree (type, op0); in expand_mul_overflow()
1952 ops.op1 = make_tree (type, op1); in expand_mul_overflow()
1953 tem = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
1964 ops.code = MULT_EXPR; in expand_mul_overflow()
1965 ops.type = type; in expand_mul_overflow()
1966 res = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_mul_overflow()
2143 struct separate_ops ops; in expand_vector_ubsan_overflow() local
2144 ops.code = PLUS_EXPR; in expand_vector_ubsan_overflow()
2145 ops.type = TREE_TYPE (cntv); in expand_vector_ubsan_overflow()
2146 ops.op0 = cntv; in expand_vector_ubsan_overflow()
2147 ops.op1 = build_int_cst (TREE_TYPE (cntv), 1); in expand_vector_ubsan_overflow()
2148 ops.op2 = NULL_TREE; in expand_vector_ubsan_overflow()
2149 ops.location = loc; in expand_vector_ubsan_overflow()
2150 rtx ret = expand_expr_real_2 (&ops, cntvar, TYPE_MODE (sizetype), in expand_vector_ubsan_overflow()
2161 struct separate_ops ops; in expand_vector_ubsan_overflow() local
2162 ops.code = code; in expand_vector_ubsan_overflow()
2163 ops.type = TREE_TYPE (arg0); in expand_vector_ubsan_overflow()
2164 ops.op0 = arg0; in expand_vector_ubsan_overflow()
2165 ops.op1 = arg1; in expand_vector_ubsan_overflow()
2166 ops.op2 = NULL_TREE; in expand_vector_ubsan_overflow()
2167 ops.location = loc; in expand_vector_ubsan_overflow()
2168 rtx ret = expand_expr_real_2 (&ops, lhsr, TYPE_MODE (TREE_TYPE (arg0)), in expand_vector_ubsan_overflow()
2285 struct separate_ops ops; in expand_arith_overflow() local
2286 ops.code = code; in expand_arith_overflow()
2287 ops.type = type; in expand_arith_overflow()
2288 ops.op0 = fold_convert_loc (loc, type, arg0); in expand_arith_overflow()
2289 ops.op1 = fold_convert_loc (loc, type, arg1); in expand_arith_overflow()
2290 ops.op2 = NULL_TREE; in expand_arith_overflow()
2291 ops.location = loc; in expand_arith_overflow()
2292 rtx tem = expand_expr_real_2 (&ops, NULL_RTX, mode, EXPAND_NORMAL); in expand_arith_overflow()
2486 class expand_operand ops[3]; in expand_mask_load_optab_fn() local
2508 create_output_operand (&ops[0], target, TYPE_MODE (type)); in expand_mask_load_optab_fn()
2509 create_fixed_operand (&ops[1], mem); in expand_mask_load_optab_fn()
2510 create_input_operand (&ops[2], mask, TYPE_MODE (TREE_TYPE (maskt))); in expand_mask_load_optab_fn()
2511 expand_insn (icode, 3, ops); in expand_mask_load_optab_fn()
2512 if (!rtx_equal_p (target, ops[0].value)) in expand_mask_load_optab_fn()
2513 emit_move_insn (target, ops[0].value); in expand_mask_load_optab_fn()
2523 class expand_operand ops[3]; in expand_mask_store_optab_fn() local
2543 create_fixed_operand (&ops[0], mem); in expand_mask_store_optab_fn()
2544 create_input_operand (&ops[1], reg, TYPE_MODE (type)); in expand_mask_store_optab_fn()
2545 create_input_operand (&ops[2], mask, TYPE_MODE (TREE_TYPE (maskt))); in expand_mask_store_optab_fn()
2546 expand_insn (icode, 3, ops); in expand_mask_store_optab_fn()
2784 class expand_operand ops[6]; in expand_scatter_store_optab_fn() local
2786 create_address_operand (&ops[i++], base_rtx); in expand_scatter_store_optab_fn()
2787 create_input_operand (&ops[i++], offset_rtx, TYPE_MODE (TREE_TYPE (offset))); in expand_scatter_store_optab_fn()
2788 create_integer_operand (&ops[i++], TYPE_UNSIGNED (TREE_TYPE (offset))); in expand_scatter_store_optab_fn()
2789 create_integer_operand (&ops[i++], scale_int); in expand_scatter_store_optab_fn()
2790 create_input_operand (&ops[i++], rhs_rtx, TYPE_MODE (TREE_TYPE (rhs))); in expand_scatter_store_optab_fn()
2795 create_input_operand (&ops[i++], mask_rtx, TYPE_MODE (TREE_TYPE (mask))); in expand_scatter_store_optab_fn()
2800 expand_insn (icode, i, ops); in expand_scatter_store_optab_fn()
2819 class expand_operand ops[6]; in expand_gather_load_optab_fn() local
2820 create_output_operand (&ops[i++], lhs_rtx, TYPE_MODE (TREE_TYPE (lhs))); in expand_gather_load_optab_fn()
2821 create_address_operand (&ops[i++], base_rtx); in expand_gather_load_optab_fn()
2822 create_input_operand (&ops[i++], offset_rtx, TYPE_MODE (TREE_TYPE (offset))); in expand_gather_load_optab_fn()
2823 create_integer_operand (&ops[i++], TYPE_UNSIGNED (TREE_TYPE (offset))); in expand_gather_load_optab_fn()
2824 create_integer_operand (&ops[i++], scale_int); in expand_gather_load_optab_fn()
2829 create_input_operand (&ops[i++], mask_rtx, TYPE_MODE (TREE_TYPE (mask))); in expand_gather_load_optab_fn()
2833 expand_insn (icode, i, ops); in expand_gather_load_optab_fn()
2834 if (!rtx_equal_p (lhs_rtx, ops[0].value)) in expand_gather_load_optab_fn()
2835 emit_move_insn (lhs_rtx, ops[0].value); in expand_gather_load_optab_fn()
2926 expand_operand *ops = XALLOCAVEC (expand_operand, nargs + 1); in expand_direct_optab_fn() local
2944 create_output_operand (&ops[0], dest, insn_data[icode].operand[0].mode); in expand_direct_optab_fn()
2952 create_convert_operand_from (&ops[i + 1], rhs_rtx, in expand_direct_optab_fn()
2956 create_input_operand (&ops[i + 1], rhs_rtx, TYPE_MODE (rhs_type)); in expand_direct_optab_fn()
2959 expand_insn (icode, nargs + 1, ops); in expand_direct_optab_fn()
2960 if (lhs_rtx && !rtx_equal_p (lhs_rtx, ops[0].value)) in expand_direct_optab_fn()
2975 rtx tmp = convert_to_mode (GET_MODE (lhs_rtx), ops[0].value, 0); in expand_direct_optab_fn()
2979 else if (GET_MODE (lhs_rtx) == GET_MODE (ops[0].value)) in expand_direct_optab_fn()
2980 emit_move_insn (lhs_rtx, ops[0].value); in expand_direct_optab_fn()
2984 convert_move (lhs_rtx, ops[0].value, 0); in expand_direct_optab_fn()
2994 expand_operand ops[3]; in expand_while_optab_fn() local
3000 create_output_operand (&ops[0], lhs_rtx, TYPE_MODE (lhs_type)); in expand_while_optab_fn()
3007 create_input_operand (&ops[i + 1], rhs_rtx, TYPE_MODE (rhs_type[i])); in expand_while_optab_fn()
3013 expand_insn (icode, 3, ops); in expand_while_optab_fn()
3014 if (!rtx_equal_p (lhs_rtx, ops[0].value)) in expand_while_optab_fn()
3015 emit_move_insn (lhs_rtx, ops[0].value); in expand_while_optab_fn()
3453 tree (&ops)[3], tree *else_out) in can_interpret_as_conditional_op_p()
3459 ops[0] = gimple_assign_rhs1 (assign); in can_interpret_as_conditional_op_p()
3460 ops[1] = gimple_assign_rhs2 (assign); in can_interpret_as_conditional_op_p()
3461 ops[2] = gimple_assign_rhs3 (assign); in can_interpret_as_conditional_op_p()
3476 ops[i] = i < nops ? gimple_call_arg (call, i + 1) : NULL_TREE; in can_interpret_as_conditional_op_p()