mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-15 06:58:20 +02:00
i965/fs: Make emit_lrp return an fs_inst
Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
parent
484f9f4fcd
commit
a3e05898e9
2 changed files with 5 additions and 5 deletions
|
|
@ -303,8 +303,8 @@ public:
|
|||
fs_reg fix_math_operand(fs_reg src);
|
||||
fs_inst *emit_math(enum opcode op, fs_reg dst, fs_reg src0);
|
||||
fs_inst *emit_math(enum opcode op, fs_reg dst, fs_reg src0, fs_reg src1);
|
||||
void emit_lrp(const fs_reg &dst, const fs_reg &x, const fs_reg &y,
|
||||
const fs_reg &a);
|
||||
fs_inst *emit_lrp(const fs_reg &dst, const fs_reg &x, const fs_reg &y,
|
||||
const fs_reg &a);
|
||||
void emit_minmax(enum brw_conditional_mod conditionalmod, const fs_reg &dst,
|
||||
const fs_reg &src0, const fs_reg &src1);
|
||||
void emit_discard_jump();
|
||||
|
|
|
|||
|
|
@ -288,7 +288,7 @@ fs_visitor::visit(ir_dereference_array *ir)
|
|||
this->result = src;
|
||||
}
|
||||
|
||||
void
|
||||
fs_inst *
|
||||
fs_visitor::emit_lrp(const fs_reg &dst, const fs_reg &x, const fs_reg &y,
|
||||
const fs_reg &a)
|
||||
{
|
||||
|
|
@ -305,12 +305,12 @@ fs_visitor::emit_lrp(const fs_reg &dst, const fs_reg &x, const fs_reg &y,
|
|||
emit(ADD(one_minus_a, negative_a, fs_reg(1.0f)));
|
||||
emit(MUL(x_times_one_minus_a, x, one_minus_a));
|
||||
|
||||
emit(ADD(dst, x_times_one_minus_a, y_times_a));
|
||||
return emit(ADD(dst, x_times_one_minus_a, y_times_a));
|
||||
} else {
|
||||
/* The LRP instruction actually does op1 * op0 + op2 * (1 - op0), so
|
||||
* we need to reorder the operands.
|
||||
*/
|
||||
emit(LRP(dst, a, y, x));
|
||||
return emit(LRP(dst, a, y, x));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue