Lines Matching refs:omod
66 * (2) The second pass combines instructions like mad, omod, clamp and
1440 case aco_opcode::v_mul_f32: { /* omod */
1455 if (vop3 && (vop3->abs[!i] || vop3->neg[!i] || vop3->clamp || vop3->omod))
1502 vop3.omod != 0 || vop3.opsel != 0)
1907 new_vop3->omod = cmp_vop3.omod;
2033 new_vop3->omod = cmp_vop3.omod;
2085 new_vop3->omod = cmp_vop3.omod;
2097 new_sdwa->omod = cmp_sdwa.omod;
2152 /* don't support inbetween clamp/omod */
2153 if (op2_vop3 && (op2_vop3->clamp || op2_vop3->omod))
2158 *op1_omod = op1_vop3 ? op1_vop3->omod : 0u;
2206 unsigned omod)
2212 new_instr->omod = omod;
2233 uint8_t opsel = 0, omod = 0;
2235 abs, &opsel, &clamp, &omod, NULL, NULL, NULL, &precise)) {
2237 create_vop3_for_op3(ctx, new_op, instr, operands, neg, abs, opsel, clamp, omod);
2301 uint8_t opsel = 0, omod = 0;
2307 create_vop3_for_op3(ctx, op, instr, operands, neg, abs, opsel, clamp, omod);
2326 uint8_t opsel = 0, omod = 0;
2329 abs, &opsel, &clamp, &omod, &inbetween_neg, NULL, NULL, &precise) &&
2334 create_vop3_for_op3(ctx, minmax3, instr, operands, neg, abs, opsel, clamp, omod);
2590 uint8_t opsel = 0, omod = 0;
2592 abs, &opsel, &clamp, &omod, NULL, NULL, NULL, &precise)) {
2685 create_vop3_for_op3(ctx, med, instr, operands, neg, abs, opsel, clamp, omod);
2798 if (!def_info.is_clamp() && (instr->clamp || instr->omod))
2802 instr->omod = 1;
2804 instr->omod = 2;
2806 instr->omod = 3;
2813 /* apply omod / clamp modifiers if the def is used only once and the instruction can have modifiers */
2825 /* omod flushes -0 to +0 and has no effect if denormals are enabled */
2826 bool can_use_omod = (can_vop3 || ctx.program->chip_class >= GFX9); /* SDWA omod is GFX9+ */
2839 /* if the omod/clamp instruction is dead, then the single user of this
3333 new_mul.omod = mul.omod;
3373 /* no clamp/omod allowed between mul and add */
3374 if (info.instr->isVOP3() && (info.instr->vop3().clamp || info.instr->vop3().omod))
3401 unsigned omod = 0;
3416 omod = vop3.omod;
3450 mad->omod = omod;
3992 /* 2. Combine v_mad, omod, clamp and propagate sgpr on VALU instructions */