/netbsd-src/external/gpl3/gcc.old/dist/gcc/ |
H A D | tree-phinodes.c | 96 gphi *phi; in allocate_phi_node() local 111 phi = as_a <gphi *> (free_phinodes[bucket]->pop ()); in allocate_phi_node() 119 phi = static_cast <gphi *> (ggc_internal_alloc (size)); in allocate_phi_node() 129 return phi; in allocate_phi_node() 171 gphi *phi; in make_phi_node() local 176 phi = allocate_phi_node (capacity); in make_phi_node() 181 memset (phi, 0, (sizeof (struct gphi) in make_phi_node() 184 phi->code = GIMPLE_PHI; in make_phi_node() 185 gimple_init_singleton (phi); in make_phi_node() 186 phi->nargs = len; in make_phi_node() [all …]
|
H A D | gimple-ssa-split-paths.c | 193 gimple *phi = gsi_stmt (gsi); in is_feasible_trace() local 194 if ((gimple_phi_arg_def (phi, 0) == lhs1 in is_feasible_trace() 195 && gimple_phi_arg_def (phi, 1) == lhs2) in is_feasible_trace() 196 || (gimple_phi_arg_def (phi, 1) == lhs1 in is_feasible_trace() 197 && gimple_phi_arg_def (phi, 0) == lhs2)) in is_feasible_trace() 239 gimple *phi = gsi_stmt (gsi); in is_feasible_trace() local 240 if ((gimple_phi_arg_def (phi, 0) == lhs1 in is_feasible_trace() 241 && gimple_phi_arg_def (phi, 1) == rhs1) in is_feasible_trace() 242 || (gimple_phi_arg_def (phi, 1) == lhs1 in is_feasible_trace() 243 && gimple_phi_arg_def (phi, 0) == rhs1)) in is_feasible_trace() [all …]
|
H A D | tree-ssa-uninit.c | 395 can_skip_redundant_opnd (tree opnd, gimple *phi) in can_skip_redundant_opnd() argument 401 phi_def = gimple_phi_result (phi); in can_skip_redundant_opnd() 422 compute_uninit_opnds_pos (gphi *phi) in compute_uninit_opnds_pos() argument 427 n = gimple_phi_num_args (phi); in compute_uninit_opnds_pos() 434 tree op = gimple_phi_arg_def (phi, i); in compute_uninit_opnds_pos() 437 && !can_skip_redundant_opnd (op, phi)) in compute_uninit_opnds_pos() 817 collect_phi_def_edges (gphi *phi, basic_block cd_root, in collect_phi_def_edges() argument 825 if (visited_phis->add (phi)) in collect_phi_def_edges() 828 n = gimple_phi_num_args (phi); in collect_phi_def_edges() 831 opnd_edge = gimple_phi_arg_edge (phi, i); in collect_phi_def_edges() [all …]
|
H A D | tree-parloops.c | 225 parloops_is_slp_reduction (loop_vec_info loop_info, gimple *phi, in parloops_is_slp_reduction() argument 228 class loop *loop = (gimple_bb (phi))->loop_father; in parloops_is_slp_reduction() 243 lhs = PHI_RESULT (phi); in parloops_is_slp_reduction() 256 if (use_stmt == phi) in parloops_is_slp_reduction() 301 if (!found || loop_use_stmt != phi || size < 2) in parloops_is_slp_reduction() 306 lhs = PHI_RESULT (phi); in parloops_is_slp_reduction() 460 gphi *phi = as_a <gphi *> (phi_info->stmt); in parloops_is_simple_reduction() local 461 class loop *loop = (gimple_bb (phi))->loop_father; in parloops_is_simple_reduction() 476 tree phi_name = PHI_RESULT (phi); in parloops_is_simple_reduction() 504 tree loop_arg = PHI_ARG_DEF_FROM_EDGE (phi, latch_e); in parloops_is_simple_reduction() [all …]
|
H A D | tree-ssa-phiopt.c | 136 gphi *phi = NULL; in single_non_singleton_phi_for_edges() local 149 if (phi) in single_non_singleton_phi_for_edges() 152 phi = p; in single_non_singleton_phi_for_edges() 154 return phi; in single_non_singleton_phi_for_edges() 189 gphi *phi; in tree_ssa_phiopt_worker() local 297 phi = as_a <gphi *> (gsi_stmt (gsi)); in tree_ssa_phiopt_worker() 298 arg0 = gimple_phi_arg_def (phi, e1->dest_idx); in tree_ssa_phiopt_worker() 299 arg1 = gimple_phi_arg_def (phi, e2->dest_idx); in tree_ssa_phiopt_worker() 300 if (value_replacement (bb, bb1, e1, e2, phi, arg0, arg1) == 2) in tree_ssa_phiopt_worker() 311 phi = single_non_singleton_phi_for_edges (phis, e1, e2); in tree_ssa_phiopt_worker() [all …]
|
H A D | gimple-streamer-out.c | 39 output_phi (struct output_block *ob, gphi *phi) in output_phi() argument 41 unsigned i, len = gimple_phi_num_args (phi); in output_phi() 44 streamer_write_uhwi (ob, SSA_NAME_VERSION (PHI_RESULT (phi))); in output_phi() 48 stream_write_tree (ob, gimple_phi_arg_def (phi, i), true); in output_phi() 49 streamer_write_uhwi (ob, gimple_phi_arg_edge (phi, i)->src->index); in output_phi() 51 location_t loc = gimple_phi_arg_location (phi, i); in output_phi() 246 gphi *phi = psi.phi (); in output_bb() local 251 if (!virtual_operand_p (gimple_phi_result (phi))) in output_bb() 252 output_phi (ob, phi); in output_bb()
|
H A D | tree-outof-ssa.c | 588 gphi *phi = gsi.phi (); in eliminate_build() local 591 p0 = var_to_partition (g->map, gimple_phi_result (phi)); in eliminate_build() 596 Ti = PHI_ARG_DEF (phi, g->e->dest_idx); in eliminate_build() 601 locus = gimple_phi_arg_location_from_edge (phi, g->e); in eliminate_build() 794 remove_gimple_phi_args (gphi *phi) in remove_gimple_phi_args() argument 802 print_gimple_stmt (dump_file, phi, 0, TDF_SLIM); in remove_gimple_phi_args() 805 FOR_EACH_PHI_ARG (arg_p, phi, iter, SSA_OP_USE) in remove_gimple_phi_args() 845 gphi *phi = gsi.phi (); in eliminate_useless_phis() local 846 result = gimple_phi_result (phi); in eliminate_useless_phis() 854 remove_gimple_phi_args (phi); in eliminate_useless_phis() [all …]
|
H A D | tree-ssa-phiprop.c | 133 phiprop_insert_phi (basic_block bb, gphi *phi, gimple *use_stmt, in phiprop_insert_phi() argument 164 old_arg = PHI_ARG_DEF_FROM_EDGE (phi, e); in phiprop_insert_phi() 165 locus = gimple_phi_arg_location_from_edge (phi, e); in phiprop_insert_phi() 180 print_generic_expr (dump_file, PHI_ARG_DEF_FROM_EDGE (phi, e)); in phiprop_insert_phi() 198 old_arg = PHI_ARG_DEF_FROM_EDGE (phi, e); in phiprop_insert_phi() 213 print_generic_expr (dump_file, PHI_ARG_DEF_FROM_EDGE (phi, e)); in phiprop_insert_phi() 262 propagate_with_phi (basic_block bb, gphi *phi, struct phiprop_d *phivn, in propagate_with_phi() argument 265 tree ptr = PHI_RESULT (phi); in propagate_with_phi() 282 FOR_EACH_PHI_ARG (arg_p, phi, i, SSA_OP_USE) in propagate_with_phi() 376 gimple_bb (phi)))) in propagate_with_phi() [all …]
|
H A D | tree-ssa-loop-manip.c | 65 gphi *phi; in create_iv() local 156 phi = create_phi_node (vb, loop->header); in create_iv() 157 add_phi_arg (phi, initial, loop_preheader_edge (loop), UNKNOWN_LOCATION); in create_iv() 158 add_phi_arg (phi, va, loop_latch_edge (loop), UNKNOWN_LOCATION); in create_iv() 289 gphi *phi; in add_exit_phi() local 309 phi = create_phi_node (NULL_TREE, exit); in add_exit_phi() 310 create_new_def_for (var, phi, gimple_phi_result_ptr (phi)); in add_exit_phi() 312 add_phi_arg (phi, var, e, UNKNOWN_LOCATION); in add_exit_phi() 317 print_gimple_stmt (dump_file, phi, 0, dump_flags); in add_exit_phi() 464 gphi *phi = bsi.phi (); in find_uses_to_rename_bb() local [all …]
|
H A D | tree-phinodes.h | 25 extern void add_phi_node_to_bb (gphi *phi, basic_block bb); 47 gimple *phi; in phi_arg_index_from_use() local 53 phi = USE_STMT (use); in phi_arg_index_from_use() 56 root = gimple_phi_arg (phi, 0); in phi_arg_index_from_use() 63 && index < gimple_phi_capacity (phi)); in phi_arg_index_from_use()
|
/netbsd-src/external/gpl3/gcc/dist/gcc/ |
H A D | tree-phinodes.cc | 96 gphi *phi; in allocate_phi_node() local 111 phi = as_a <gphi *> (free_phinodes[bucket]->pop ()); in allocate_phi_node() 119 phi = static_cast <gphi *> (ggc_internal_alloc (size)); in allocate_phi_node() 129 return phi; in allocate_phi_node() 171 gphi *phi; in make_phi_node() local 176 phi = allocate_phi_node (capacity); in make_phi_node() 181 memset (phi, 0, (sizeof (struct gphi) in make_phi_node() 184 phi->code = GIMPLE_PHI; in make_phi_node() 185 gimple_init_singleton (phi); in make_phi_node() 186 phi->nargs = len; in make_phi_node() [all …]
|
H A D | gimple-ssa-split-paths.cc | 194 gimple *phi = gsi_stmt (gsi); in is_feasible_trace() local 195 if ((gimple_phi_arg_def (phi, 0) == lhs1 in is_feasible_trace() 196 && gimple_phi_arg_def (phi, 1) == lhs2) in is_feasible_trace() 197 || (gimple_phi_arg_def (phi, 1) == lhs1 in is_feasible_trace() 198 && gimple_phi_arg_def (phi, 0) == lhs2)) in is_feasible_trace() 240 gimple *phi = gsi_stmt (gsi); in is_feasible_trace() local 241 if ((gimple_phi_arg_def (phi, 0) == lhs1 in is_feasible_trace() 242 && gimple_phi_arg_def (phi, 1) == rhs1) in is_feasible_trace() 243 || (gimple_phi_arg_def (phi, 1) == lhs1 in is_feasible_trace() 244 && gimple_phi_arg_def (phi, 0) == rhs1)) in is_feasible_trace() [all …]
|
H A D | gimple-range-path.cc | 272 path_range_query::ssa_range_in_phi (irange &r, gphi *phi) in ssa_range_in_phi() argument 274 tree name = gimple_phi_result (phi); in ssa_range_in_phi() 275 basic_block bb = gimple_bb (phi); in ssa_range_in_phi() 276 unsigned nargs = gimple_phi_num_args (phi); in ssa_range_in_phi() 280 if (m_resolve && m_ranger->range_of_expr (r, name, phi)) in ssa_range_in_phi() 290 tree arg = gimple_phi_arg_def (phi, i); in ssa_range_in_phi() 306 if (e_in == gimple_phi_arg_edge (phi, i)) in ssa_range_in_phi() 308 tree arg = gimple_phi_arg_def (phi, i); in ssa_range_in_phi() 390 gphi *phi = iter.phi (); in compute_ranges_in_phis() local 391 tree name = gimple_phi_result (phi); in compute_ranges_in_phis() [all …]
|
H A D | tree-parloops.cc | 225 parloops_is_slp_reduction (loop_vec_info loop_info, gimple *phi, in parloops_is_slp_reduction() argument 228 class loop *loop = (gimple_bb (phi))->loop_father; in parloops_is_slp_reduction() 243 lhs = PHI_RESULT (phi); in parloops_is_slp_reduction() 256 if (use_stmt == phi) in parloops_is_slp_reduction() 301 if (!found || loop_use_stmt != phi || size < 2) in parloops_is_slp_reduction() 306 lhs = PHI_RESULT (phi); in parloops_is_slp_reduction() 460 gphi *phi = as_a <gphi *> (phi_info->stmt); in parloops_is_simple_reduction() local 461 class loop *loop = (gimple_bb (phi))->loop_father; in parloops_is_simple_reduction() 476 tree phi_name = PHI_RESULT (phi); in parloops_is_simple_reduction() 504 tree loop_arg = PHI_ARG_DEF_FROM_EDGE (phi, latch_e); in parloops_is_simple_reduction() [all …]
|
H A D | tree-ssa-uninit.cc | 947 gphi *phi = si.phi (); in warn_uninit_phi_uses() local 948 tree def = PHI_ARG_DEF_FROM_EDGE (phi, found); in warn_uninit_phi_uses() 959 FOR_EACH_IMM_USE_FAST (use_p, iter, gimple_phi_result (phi)) in warn_uninit_phi_uses() 1084 can_skip_redundant_opnd (tree opnd, gimple *phi) in can_skip_redundant_opnd() argument 1086 tree phi_def = gimple_phi_result (phi); in can_skip_redundant_opnd() 1108 compute_uninit_opnds_pos (gphi *phi) in compute_uninit_opnds_pos() argument 1112 unsigned n = gimple_phi_num_args (phi); in compute_uninit_opnds_pos() 1119 tree op = gimple_phi_arg_def (phi, i); in compute_uninit_opnds_pos() 1122 && !can_skip_redundant_opnd (op, phi)) in compute_uninit_opnds_pos() 1160 uninit_undef_val_t::phi_arg_set (gphi *phi) in phi_arg_set() argument [all …]
|
H A D | gimple-predicate-analysis.cc | 326 find_var_cmp_const (pred_chain_union preds, gphi *phi, gimple **flag_def, in find_var_cmp_const() argument 367 || gimple_bb (lhs_def) != gimple_bb (phi)) in find_var_cmp_const() 419 || gimple_bb (*flag_def) != gimple_bb (phi) in find_var_cmp_const() 480 prune_phi_opnds (gphi *phi, unsigned opnds, gphi *flag_def, in prune_phi_opnds() argument 507 tree phi_arg = gimple_phi_arg_def (phi, i); in prune_phi_opnds() 546 tree opnd = gimple_phi_arg_def (phi, i); in prune_phi_opnds() 553 edge opnd_edge = gimple_phi_arg_edge (phi, i); in prune_phi_opnds() 554 if (def_preds.is_use_guarded (phi, opnd_edge->src, in prune_phi_opnds() 575 collect_phi_def_edges (gphi *phi, basic_block cd_root, auto_vec<edge> *edges, in collect_phi_def_edges() argument 584 print_gimple_stmt (dump_file, phi, 0); in collect_phi_def_edges() [all …]
|
H A D | tree-ssa-phiopt.cc | 144 gphi *phi = NULL; in single_non_singleton_phi_for_edges() local 157 if (phi) in single_non_singleton_phi_for_edges() 160 phi = p; in single_non_singleton_phi_for_edges() 162 return phi; in single_non_singleton_phi_for_edges() 199 gphi *phi; in tree_ssa_phiopt_worker() local 306 phi = as_a <gphi *> (gsi_stmt (gsi)); in tree_ssa_phiopt_worker() 307 arg0 = gimple_phi_arg_def (phi, e1->dest_idx); in tree_ssa_phiopt_worker() 308 arg1 = gimple_phi_arg_def (phi, e2->dest_idx); in tree_ssa_phiopt_worker() 309 if (value_replacement (bb, bb1, e1, e2, phi, arg0, arg1) == 2) in tree_ssa_phiopt_worker() 320 phi = single_non_singleton_phi_for_edges (phis, e1, e2); in tree_ssa_phiopt_worker() [all …]
|
H A D | gimple-streamer-out.cc | 39 output_phi (struct output_block *ob, gphi *phi) in output_phi() argument 41 unsigned i, len = gimple_phi_num_args (phi); in output_phi() 44 streamer_write_uhwi (ob, SSA_NAME_VERSION (PHI_RESULT (phi))); in output_phi() 48 stream_write_tree (ob, gimple_phi_arg_def (phi, i), true); in output_phi() 49 streamer_write_uhwi (ob, gimple_phi_arg_edge (phi, i)->src->index); in output_phi() 51 location_t loc = gimple_phi_arg_location (phi, i); in output_phi() 246 gphi *phi = psi.phi (); in output_bb() local 251 if (!virtual_operand_p (gimple_phi_result (phi))) in output_bb() 252 output_phi (ob, phi); in output_bb()
|
H A D | tree-outof-ssa.cc | 588 gphi *phi = gsi.phi (); in eliminate_build() local 591 p0 = var_to_partition (g->map, gimple_phi_result (phi)); in eliminate_build() 596 Ti = PHI_ARG_DEF (phi, g->e->dest_idx); in eliminate_build() 601 locus = gimple_phi_arg_location_from_edge (phi, g->e); in eliminate_build() 794 remove_gimple_phi_args (gphi *phi) in remove_gimple_phi_args() argument 802 print_gimple_stmt (dump_file, phi, 0, TDF_SLIM); in remove_gimple_phi_args() 805 FOR_EACH_PHI_ARG (arg_p, phi, iter, SSA_OP_USE) in remove_gimple_phi_args() 845 gphi *phi = gsi.phi (); in eliminate_useless_phis() local 846 result = gimple_phi_result (phi); in eliminate_useless_phis() 854 remove_gimple_phi_args (phi); in eliminate_useless_phis() [all …]
|
H A D | tree-ssa-phiprop.cc | 133 phiprop_insert_phi (basic_block bb, gphi *phi, gimple *use_stmt, in phiprop_insert_phi() argument 164 old_arg = PHI_ARG_DEF_FROM_EDGE (phi, e); in phiprop_insert_phi() 165 locus = gimple_phi_arg_location_from_edge (phi, e); in phiprop_insert_phi() 180 print_generic_expr (dump_file, PHI_ARG_DEF_FROM_EDGE (phi, e)); in phiprop_insert_phi() 198 old_arg = PHI_ARG_DEF_FROM_EDGE (phi, e); in phiprop_insert_phi() 213 print_generic_expr (dump_file, PHI_ARG_DEF_FROM_EDGE (phi, e)); in phiprop_insert_phi() 262 propagate_with_phi (basic_block bb, gphi *phi, struct phiprop_d *phivn, in propagate_with_phi() argument 265 tree ptr = PHI_RESULT (phi); in propagate_with_phi() 282 FOR_EACH_PHI_ARG (arg_p, phi, i, SSA_OP_USE) in propagate_with_phi() 376 gimple_bb (phi)))) in propagate_with_phi() [all …]
|
H A D | tree-ssa-loop-manip.cc | 65 gphi *phi; in create_iv() local 156 phi = create_phi_node (vb, loop->header); in create_iv() 157 add_phi_arg (phi, initial, loop_preheader_edge (loop), UNKNOWN_LOCATION); in create_iv() 158 add_phi_arg (phi, va, loop_latch_edge (loop), UNKNOWN_LOCATION); in create_iv() 289 gphi *phi; in add_exit_phi() local 309 phi = create_phi_node (NULL_TREE, exit); in add_exit_phi() 310 create_new_def_for (var, phi, gimple_phi_result_ptr (phi)); in add_exit_phi() 312 add_phi_arg (phi, var, e, UNKNOWN_LOCATION); in add_exit_phi() 317 print_gimple_stmt (dump_file, phi, 0, dump_flags); in add_exit_phi() 462 gphi *phi = bsi.phi (); in find_uses_to_rename_bb() local [all …]
|
H A D | tree-phinodes.h | 25 extern void add_phi_node_to_bb (gphi *phi, basic_block bb); 47 gimple *phi; in phi_arg_index_from_use() local 53 phi = USE_STMT (use); in phi_arg_index_from_use() 56 root = gimple_phi_arg (phi, 0); in phi_arg_index_from_use() 63 && index < gimple_phi_capacity (phi)); in phi_arg_index_from_use()
|
/netbsd-src/external/gpl3/gcc/dist/gcc/rtl-ssa/ |
H A D | functions.cc | 110 function_info::simplify_phi_setup (phi_info *phi, set_info **assumed_values, in simplify_phi_setup() argument 116 unsigned int phi_uid = phi->uid (); in simplify_phi_setup() 119 machine_mode phi_mode = phi->mode (); in simplify_phi_setup() 120 for (use_info *input : phi->inputs ()) in simplify_phi_setup() 141 new_value = phi; in simplify_phi_setup() 148 if (phi->mode () != phi_mode) in simplify_phi_setup() 149 phi->set_mode (phi_mode); in simplify_phi_setup() 157 simplify_phi_propagate (phi, assumed_values, nullptr, worklist); in simplify_phi_setup() 170 function_info::simplify_phi_propagate (phi_info *phi, in simplify_phi_propagate() argument 176 unsigned int phi_uid = phi->uid (); in simplify_phi_propagate() [all …]
|
H A D | blocks.cc | 276 for (const phi_info *phi : phis) in print_full() local 283 pp_access (pp, phi, PP_ACCESS_SETTER); in print_full() 359 if (auto *phi = safe_dyn_cast<phi_info *> (set)) in live_out_value() local 360 if (phi->is_degenerate ()) in live_out_value() 362 set = phi->input_value (0); in live_out_value() 367 if (bb == bb->ebb ()->last_bb () && all_uses_are_live_out_uses (phi)) in live_out_value() 368 replace_phi (phi, set); in live_out_value() 376 function_info::append_phi (ebb_info *ebb, phi_info *phi) in append_phi() argument 380 first_phi->set_prev_phi (phi); in append_phi() 381 phi->set_next_phi (first_phi); in append_phi() [all …]
|
/netbsd-src/external/apache2/llvm/dist/llvm/lib/CodeGen/ |
H A D | UnreachableBlockElim.cpp | 162 MachineBasicBlock::iterator phi = BB->begin(); in runOnMachineFunction() local 163 while (phi != BB->end() && phi->isPHI()) { in runOnMachineFunction() 164 for (unsigned i = phi->getNumOperands() - 1; i >= 2; i-=2) in runOnMachineFunction() 165 if (!preds.count(phi->getOperand(i).getMBB())) { in runOnMachineFunction() 166 phi->RemoveOperand(i); in runOnMachineFunction() 167 phi->RemoveOperand(i-1); in runOnMachineFunction() 171 if (phi->getNumOperands() == 3) { in runOnMachineFunction() 172 const MachineOperand &Input = phi->getOperand(1); in runOnMachineFunction() 173 const MachineOperand &Output = phi->getOperand(0); in runOnMachineFunction() 192 BuildMI(*BB, BB->getFirstNonPHI(), phi->getDebugLoc(), in runOnMachineFunction() [all …]
|