Lines Matching defs:mad
66 * (2) The second pass combines instructions like mad, omod, clamp and
70 * i.e. decides if a mad instruction is profitable and eliminates dead code.
290 void set_mad(Instruction* mad, uint32_t mad_info_idx)
293 mad->pass_flags = mad_info_idx;
294 instr = mad;
3556 /* convert to mad */
3568 aco_opcode mad = fadd ? aco_opcode::v_pk_fma_f16 : aco_opcode::v_pk_mad_u16;
3570 create_instruction<VOP3P_instruction>(mad, Format::VOP3P, 3, 1)};
3907 /* combine mul+add -> mad */
4072 aco_ptr<VOP3P_instruction> mad{
4075 mad->operands[i] = op[i];
4076 mad->neg_lo[i] = neg[i];
4077 mad->neg_hi[i] = abs[i];
4079 mad->clamp = clamp;
4080 mad->opsel_lo = opsel_lo;
4081 mad->opsel_hi = opsel_hi;
4083 instr = std::move(mad);
4098 aco_ptr<VOP3_instruction> mad{
4101 mad->operands[i] = op[i];
4102 mad->neg[i] = neg[i];
4103 mad->abs[i] = abs[i];
4105 mad->omod = omod;
4106 mad->clamp = clamp;
4108 instr = std::move(mad);
4368 /* re-check mad instructions */