Lines Matching defs:opsel_lo

942    bool opsel_lo = (vop3p->opsel_lo >> i) & 1;
948 if ((unsigned)opsel_lo != j && (unsigned)opsel_hi != j)
969 if (opsel_lo == opsel_hi) {
971 instr->operands[i] = opsel_lo ? const_hi : const_lo;
974 opsel_lo = opsel_lo ? const_hi_opsel : const_lo_opsel;
975 opsel_hi = opsel_lo;
981 opsel_lo = const_lo_opsel;
988 opsel_lo = opsel_lo ? const_hi_opsel : !const_hi_opsel;
995 opsel_lo = opsel_lo ? !const_lo_opsel : const_lo_opsel;
1006 vop3p->neg_lo[i] ^= opsel_lo ^ neg_lo;
1010 opsel_lo = false;
1014 vop3p->opsel_lo = opsel_lo ? (vop3p->opsel_lo | (1 << i)) : (vop3p->opsel_lo & ~(1 << i));
3424 propagate_swizzles(VOP3P_instruction* instr, uint8_t opsel_lo, uint8_t opsel_hi)
3428 assert((opsel_lo & 1) == opsel_lo);
3430 uint8_t tmp_lo = instr->opsel_lo;
3434 if (opsel_lo == 1) {
3435 instr->opsel_lo = tmp_hi;
3454 !((vop3p->opsel_lo | vop3p->opsel_hi) & 2)) {
3460 propagate_swizzles(candidate, vop3p->opsel_lo, vop3p->opsel_hi);
3481 if ((fneg->opsel_lo | fneg->opsel_hi) & 2)
3495 /* opsel_lo/hi is either 0 or 1:
3499 bool opsel_lo = (vop3p->opsel_lo >> i) & 1;
3503 vop3p->neg_lo[i] ^= opsel_lo ? neg_hi : neg_lo;
3505 vop3p->opsel_lo ^= ((opsel_lo ? ~fneg->opsel_hi : fneg->opsel_lo) & 1) << i;
3506 vop3p->opsel_hi ^= ((opsel_hi ? ~fneg->opsel_hi : fneg->opsel_lo) & 1) << i;
3521 uint8_t opsel_lo = 0, opsel_hi = 0;
3548 opsel_lo = (vop3p->opsel_lo >> i) & 1;
3579 fma->opsel_lo = mul->opsel_lo;
3581 propagate_swizzles(fma.get(), opsel_lo, opsel_hi);
3582 fma->opsel_lo |= (vop3p->opsel_lo << (2 - add_op_idx)) & 0x4;
3634 vop3p->opsel_lo = instr->isVOP3() ? ((instr->vop3().opsel & 0x7) << (is_add ? 1 : 0)) : 0x0;
3642 vop3p->opsel_lo |= (instr->isSDWA() && instr->sdwa().sel[i].offset()) << (is_add + i);
3744 instr->vop3p().opsel_lo |= 1u << i;
3914 !(instr->vop3p().opsel_lo & 0x1)));
4008 uint8_t opsel_lo = 0;
4023 opsel_lo = vop3p.opsel_lo & 0x3;
4046 opsel_lo |= vop3p.opsel_lo & (1 << add_op_idx) ? 0x4 : 0x0;
4080 mad->opsel_lo = opsel_lo;