/third_party/mesa3d/src/amd/compiler/ |
D | aco_dominance.cpp | 51 for (unsigned pred_idx : block.logical_preds) { in dominator_tree() local 52 if ((int)program->blocks[pred_idx].logical_idom == -1) in dominator_tree() 56 new_logical_idom = pred_idx; in dominator_tree() 60 while ((int)pred_idx != new_logical_idom) { in dominator_tree() 61 if ((int)pred_idx > new_logical_idom) in dominator_tree() 62 pred_idx = program->blocks[pred_idx].logical_idom; in dominator_tree() 63 if ((int)pred_idx < new_logical_idom) in dominator_tree() 68 for (unsigned pred_idx : block.linear_preds) { in dominator_tree() local 69 if ((int)program->blocks[pred_idx].linear_idom == -1) in dominator_tree() 73 new_linear_idom = pred_idx; in dominator_tree() [all …]
|
D | aco_spill.cpp | 229 unsigned pred_idx = in next_uses_per_block() local 232 auto insert_result = ctx.next_use_distances_end[pred_idx].insert( in next_uses_per_block() 237 worklist = std::max(worklist, pred_idx + 1); in next_uses_per_block() 253 for (unsigned pred_idx : preds) { in next_uses_per_block() local 254 if (ctx.program->blocks[pred_idx].loop_nest_depth > block->loop_nest_depth) in next_uses_per_block() 256 auto insert_result = ctx.next_use_distances_end[pred_idx].insert( in next_uses_per_block() 266 worklist = std::max(worklist, pred_idx + 1); in next_uses_per_block() 603 unsigned pred_idx = block->linear_preds[0]; in init_live_in_vars() local 604 for (std::pair<Temp, uint32_t> pair : ctx.spills_exit[pred_idx]) { in init_live_in_vars() 616 pred_idx = block->logical_preds[0]; in init_live_in_vars() [all …]
|
D | aco_dead_code_analysis.cpp | 76 for (unsigned pred_idx : block.linear_preds) in process_block() local 77 ctx.current_block = std::max(ctx.current_block, (int)pred_idx); in process_block()
|
D | aco_live_var_analysis.cpp | 226 for (unsigned pred_idx : block->linear_preds) in process_live_temps_per_block() local 227 phi_info[pred_idx].linear_phi_defs = linear_phi_defs; in process_live_temps_per_block() 240 for (unsigned pred_idx : preds) { in process_live_temps_per_block() local 241 auto it = lives.live_out[pred_idx].insert(t); in process_live_temps_per_block() 243 worklist = std::max(worklist, pred_idx + 1); in process_live_temps_per_block()
|
D | aco_ssa_elimination.cpp | 73 uint32_t pred_idx = preds[i]; in collect_phi_info() local 74 auto& info_vec = phi->opcode == aco_opcode::p_phi ? ctx.logical_phi_info[pred_idx] in collect_phi_info() 75 : ctx.linear_phi_info[pred_idx]; in collect_phi_info() 77 ctx.empty_blocks[pred_idx] = false; in collect_phi_info()
|
D | aco_insert_NOPs.cpp | 248 for (int pred_idx = state.old_instructions.size() - 1; pred_idx >= 0; pred_idx--) { in handle_raw_hazard_internal() local 249 aco_ptr<Instruction>& instr = state.old_instructions[pred_idx]; in handle_raw_hazard_internal() 256 for (int pred_idx = block->instructions.size() - 1; pred_idx >= 0; pred_idx--) { in handle_raw_hazard_internal() local 257 if (handle_raw_hazard_instr<Valu, Vintrp, Salu>(block->instructions[pred_idx], reg, in handle_raw_hazard_internal()
|
D | aco_instruction_selection.cpp | 98 add_logical_edge(unsigned pred_idx, Block* succ) in add_logical_edge() argument 100 succ->logical_preds.emplace_back(pred_idx); in add_logical_edge() 104 add_linear_edge(unsigned pred_idx, Block* succ) in add_linear_edge() argument 106 succ->linear_preds.emplace_back(pred_idx); in add_linear_edge() 110 add_edge(unsigned pred_idx, Block* succ) in add_edge() argument 112 add_logical_edge(pred_idx, succ); in add_edge() 113 add_linear_edge(pred_idx, succ); in add_edge()
|
/third_party/mesa3d/src/freedreno/ir3/ |
D | ir3_remove_unreachable.c | 63 unsigned pred_idx = ir3_block_get_pred_index(succ, block); in delete_block() local 68 bool swap_pred = pred_idx != succ->predecessors_count - 1; in delete_block() 75 phi->srcs[pred_idx] = phi->srcs[phi->srcs_count - 1]; in delete_block() 79 succ->predecessors[pred_idx] = in delete_block()
|
D | ir3_merge_regs.c | 405 unsigned pred_idx = ir3_block_get_pred_index(succ, block); in create_parallel_copy() local 413 if ((phi->srcs[pred_idx]->flags & IR3_REG_SSA) && in create_parallel_copy() 414 !phi->srcs[pred_idx]->def) in create_parallel_copy() 433 if ((phi->srcs[pred_idx]->flags & IR3_REG_SSA) && in create_parallel_copy() 434 !phi->srcs[pred_idx]->def) in create_parallel_copy() 436 src[j++] = phi->srcs[pred_idx]; in create_parallel_copy() 459 if ((phi->srcs[pred_idx]->flags & IR3_REG_SSA) && in create_parallel_copy() 460 !phi->srcs[pred_idx]->def) in create_parallel_copy() 462 phi->srcs[pred_idx]->def = pcopy->dsts[j]; in create_parallel_copy() 463 phi->srcs[pred_idx]->flags = pcopy->dsts[j]->flags; in create_parallel_copy()
|
D | ir3_spill.c | 1333 struct ir3_block *block, unsigned pred_idx) in is_live_in_pred() argument 1335 struct ir3_block *pred = block->predecessors[pred_idx]; in is_live_in_pred() 1338 def = def->instr->srcs[pred_idx]->def; in is_live_in_pred() 1348 struct ir3_block *block, unsigned pred_idx) in is_live_in_undef() argument 1353 return !def->instr->srcs[pred_idx]->def; in is_live_in_undef() 1358 struct ir3_block *block, unsigned pred_idx) in read_live_in() argument 1360 struct ir3_block *pred = block->predecessors[pred_idx]; in read_live_in() 1364 def = def->instr->srcs[pred_idx]->def; in read_live_in() 1461 struct ir3_block *block, unsigned pred_idx) in live_in_rewrite() argument 1463 struct ir3_block *pred = block->predecessors[pred_idx]; in live_in_rewrite() [all …]
|
D | ir3_ra_validate.c | 499 unsigned pred_idx = ir3_block_get_pred_index(succ, block); in check_reaching_block() local 503 if (instr->srcs[pred_idx]->def) in check_reaching_block() 504 check_reaching_src(ctx, instr, instr->srcs[pred_idx]); in check_reaching_block()
|
D | ir3_validate.c | 109 unsigned pred_idx = ir3_block_get_pred_index(block, pred); in validate_phi_src() local 117 validate_src(ctx, phi, phi->srcs[pred_idx]); in validate_phi_src()
|
/third_party/mesa3d/src/gallium/drivers/freedreno/a2xx/ |
D | ir2_nir.c | 931 unsigned pred = ctx->pred, pred_idx = ctx->pred_idx; in emit_if() local 950 instr->src[0] = ir2_src(pred_idx, 0, IR2_SRC_SSA); in emit_if() 958 ctx->pred_idx = instr->idx; in emit_if() 967 instr->src[0] = ir2_src(ctx->pred_idx, 0, IR2_SRC_SSA); in emit_if() 975 ctx->pred_idx = instr->idx; in emit_if() 982 instr->src[0] = ir2_src(ctx->pred_idx, 0, IR2_SRC_SSA); in emit_if() 990 ctx->pred_idx = instr->idx; in emit_if()
|
D | ir2_private.h | 150 unsigned block_idx, pred_idx; member
|