• Home
  • Raw
  • Download

Lines Matching refs:instr

37 mark_array_use(struct ir3_instruction *instr, struct ir3_register *reg)  in mark_array_use()  argument
41 ir3_lookup_array(instr->block->shader, reg->array.id); in mark_array_use()
47 instr_dce(struct ir3_instruction *instr, bool falsedep) in instr_dce() argument
51 instr->flags &= ~IR3_INSTR_UNUSED; in instr_dce()
53 if (ir3_instr_check_mark(instr)) in instr_dce()
56 if (writes_gpr(instr)) in instr_dce()
57 mark_array_use(instr, instr->dsts[0]); /* dst */ in instr_dce()
59 foreach_src (reg, instr) in instr_dce()
60 mark_array_use(instr, reg); /* src */ in instr_dce()
62 foreach_ssa_src_n (src, i, instr) { in instr_dce()
63 instr_dce(src, __is_false_dep(instr, i)); in instr_dce()
71 foreach_instr_safe (instr, &block->instr_list) { in remove_unused_by_block()
72 if (instr->opc == OPC_END || instr->opc == OPC_CHSH || in remove_unused_by_block()
73 instr->opc == OPC_CHMASK) in remove_unused_by_block()
75 if (instr->flags & IR3_INSTR_UNUSED) { in remove_unused_by_block()
76 if (instr->opc == OPC_META_SPLIT) { in remove_unused_by_block()
77 struct ir3_instruction *src = ssa(instr->srcs[0]); in remove_unused_by_block()
82 src->dsts[0]->wrmask &= ~(1 << instr->split.off); in remove_unused_by_block()
87 foreach_ssa_use (use, instr) in remove_unused_by_block()
89 if (*srcp == instr) in remove_unused_by_block()
92 list_delinit(&instr->node); in remove_unused_by_block()
111 foreach_instr (instr, &block->instr_list) { in find_and_remove_unused()
115 if (so->num_sampler_prefetch && (instr->opc == OPC_META_INPUT) && in find_and_remove_unused()
116 (instr->input.sysval == SYSTEM_VALUE_BARYCENTRIC_PERSP_PIXEL)) in find_and_remove_unused()
118 instr->flags |= IR3_INSTR_UNUSED; in find_and_remove_unused()
149 foreach_instr (instr, &block->instr_list) { in find_and_remove_unused()
150 if (instr->opc != OPC_META_SPLIT) in find_and_remove_unused()
153 struct ir3_instruction *src = ssa(instr->srcs[0]); in find_and_remove_unused()
157 instr->srcs[0]->wrmask = src->dsts[0]->wrmask; in find_and_remove_unused()
162 struct ir3_instruction *instr = ir->a0_users[i]; in find_and_remove_unused() local
163 if (instr && (instr->flags & IR3_INSTR_UNUSED)) in find_and_remove_unused()
168 struct ir3_instruction *instr = ir->a1_users[i]; in find_and_remove_unused() local
169 if (instr && (instr->flags & IR3_INSTR_UNUSED)) in find_and_remove_unused()
174 struct ir3_instruction *instr = ir->predicates[i]; in find_and_remove_unused() local
175 if (instr && (instr->flags & IR3_INSTR_UNUSED)) in find_and_remove_unused()