Lines Matching refs:slots
294 unsigned slots = r600_isa_alu_slots(bc->isa->hw_class, alu->op); in is_alu_vec_unit_inst() local
295 return !(slots & AF_S); in is_alu_vec_unit_inst()
300 unsigned slots = r600_isa_alu_slots(bc->isa->hw_class, alu->op); in is_alu_trans_unit_inst() local
301 return !(slots & AF_V); in is_alu_trans_unit_inst()
307 unsigned slots = r600_isa_alu_slots(bc->isa->hw_class, alu->op); in is_alu_any_unit_inst() local
308 return slots == AF_VS; in is_alu_any_unit_inst()
525 struct r600_bytecode_alu *slots[5]) in check_and_set_bank_swizzle()
534 if (slots[i]) { in check_and_set_bank_swizzle()
535 if (slots[i]->bank_swizzle_force) { in check_and_set_bank_swizzle()
536 slots[i]->bank_swizzle = slots[i]->bank_swizzle_force; in check_and_set_bank_swizzle()
542 if (i < 4 && slots[i]) in check_and_set_bank_swizzle()
551 if (!slots[i] || !slots[i]->bank_swizzle_force) in check_and_set_bank_swizzle()
554 bank_swizzle[i] = slots[i]->bank_swizzle; in check_and_set_bank_swizzle()
562 if (slots[i]) { in check_and_set_bank_swizzle()
563 r = check_vector(bc, slots[i], &bs, bank_swizzle[i]); in check_and_set_bank_swizzle()
571 if (!r && max_slots == 5 && slots[4]) { in check_and_set_bank_swizzle()
572 r = check_scalar(bc, slots[4], &bs, bank_swizzle[4]); in check_and_set_bank_swizzle()
576 if (slots[i]) in check_and_set_bank_swizzle()
577 slots[i]->bank_swizzle = bank_swizzle[i]; in check_and_set_bank_swizzle()
586 if (!slots[i] || !slots[i]->bank_swizzle_force) { in check_and_set_bank_swizzle()
604 struct r600_bytecode_alu *slots[5], struct r600_bytecode_alu *alu_prev) in replace_gpr_with_pv_ps()
634 struct r600_bytecode_alu *alu = slots[i]; in replace_gpr_with_pv_ps()
748 static int merge_inst_groups(struct r600_bytecode *bc, struct r600_bytecode_alu *slots[5], in merge_inst_groups()
773 if (slots[i]) { in merge_inst_groups()
774 if (slots[i]->pred_sel) in merge_inst_groups()
776 if (is_alu_once_inst(slots[i])) in merge_inst_groups()
810 if (slots[i] && r600_bytecode_alu_nliterals(slots[i], literal, &nliteral)) in merge_inst_groups()
814 if (prev[i] && !slots[i]) { in merge_inst_groups()
817 } else if (prev[i] && slots[i]) { in merge_inst_groups()
818 if (max_slots == 5 && result[4] == NULL && prev[4] == NULL && slots[4] == NULL) { in merge_inst_groups()
820 if (is_alu_any_unit_inst(bc, slots[i]) && !alu_uses_lds(slots[i])) { in merge_inst_groups()
822 result[4] = slots[i]; in merge_inst_groups()
824 if (slots[i]->dst.sel == prev[i]->dst.sel && in merge_inst_groups()
825 alu_writes(slots[i]) && in merge_inst_groups()
829 result[i] = slots[i]; in merge_inst_groups()
835 } else if(!slots[i]) { in merge_inst_groups()
838 if (max_slots == 5 && slots[i] && prev[4] && in merge_inst_groups()
839 slots[i]->dst.sel == prev[4]->dst.sel && in merge_inst_groups()
840 slots[i]->dst.chan == prev[4]->dst.chan && in merge_inst_groups()
841 alu_writes(slots[i]) && in merge_inst_groups()
845 result[i] = slots[i]; in merge_inst_groups()
848 alu = slots[i]; in merge_inst_groups()
910 slots[i] = result[i]; in merge_inst_groups()
1259 struct r600_bytecode_alu *slots[5]; in r600_bytecode_add_alu_type() local
1261 r = assign_alu_units(bc, bc->cf_last->curr_bs_head, slots); in r600_bytecode_add_alu_type()
1266 r = merge_inst_groups(bc, slots, bc->cf_last->prev_bs_head); in r600_bytecode_add_alu_type()
1272 r = replace_gpr_with_pv_ps(bc, slots, bc->cf_last->prev_bs_head); in r600_bytecode_add_alu_type()
1277 r = check_and_set_bank_swizzle(bc, slots); in r600_bytecode_add_alu_type()
1282 if (slots[i]) { in r600_bytecode_add_alu_type()
1283 r = r600_bytecode_alu_nliterals(slots[i], literal, &nliteral); in r600_bytecode_add_alu_type()