Lines Matching defs:instr
72 do_xor(struct ir3_instruction *instr, unsigned dst_num, unsigned src1_num,
76 = ir3_instr_create(instr->block, OPC_XOR_B, 1, 2);
81 ir3_instr_move_before(xor, instr);
85 do_swap(struct ir3_compiler *compiler, struct ir3_instruction *instr,
105 do_swap(compiler, instr,
120 do_swap(compiler, instr,
128 do_swap(compiler, instr,
141 do_swap(compiler, instr,
162 do_xor(instr, dst_num, dst_num, src_num, entry->flags);
163 do_xor(instr, src_num, src_num, dst_num, entry->flags);
164 do_xor(instr, dst_num, dst_num, src_num, entry->flags);
173 struct ir3_instruction *swz = ir3_instr_create(instr->block, opc, 2, 2);
181 ir3_instr_move_before(swz, instr);
186 do_copy(struct ir3_compiler *compiler, struct ir3_instruction *instr,
195 do_swap(compiler, instr,
209 do_copy(compiler, instr,
216 do_swap(compiler, instr,
233 ir3_instr_create(instr->block, OPC_MOV, 1, 1);
238 ir3_instr_move_before(cov, instr);
242 ir3_instr_create(instr->block, OPC_SHR_B, 1, 2);
246 ir3_instr_move_before(shr, instr);
258 struct ir3_instruction *mov = ir3_instr_create(instr->block, opc, 1, 1);
267 ir3_instr_move_before(mov, instr);
313 _handle_copies(struct ir3_compiler *compiler, struct ir3_instruction *instr,
350 do_copy(compiler, instr, entry);
435 do_swap(compiler, instr, entry);
474 handle_copies(struct ir3_shader_variant *v, struct ir3_instruction *instr,
485 _handle_copies(v->compiler, instr, &ctx);
496 _handle_copies(v->compiler, instr, &ctx);
506 _handle_copies(v->compiler, instr, &ctx);
513 _handle_copies(v->compiler, instr, &ctx);
525 foreach_instr_safe (instr, &block->instr_list) {
526 if (instr->opc == OPC_META_PARALLEL_COPY) {
528 for (unsigned i = 0; i < instr->dsts_count; i++) {
529 struct ir3_register *dst = instr->dsts[i];
530 struct ir3_register *src = instr->srcs[i];
543 handle_copies(v, instr, copies, copies_count);
544 list_del(&instr->node);
545 } else if (instr->opc == OPC_META_COLLECT) {
547 struct ir3_register *dst = instr->dsts[0];
549 for (unsigned i = 0; i < instr->srcs_count; i++) {
550 struct ir3_register *src = instr->srcs[i];
558 handle_copies(v, instr, copies, copies_count);
559 list_del(&instr->node);
560 } else if (instr->opc == OPC_META_SPLIT) {
562 struct ir3_register *dst = instr->dsts[0];
563 struct ir3_register *src = instr->srcs[0];
569 src, instr->split.off * reg_elem_size(dst)),
572 handle_copies(v, instr, copies, copies_count);
573 list_del(&instr->node);
574 } else if (instr->opc == OPC_META_PHI) {
575 list_del(&instr->node);