ir_to_mesa: Fix up implementation of ir_unop_exp.

OPCODE_EXP is not to ir_unop_exp what OPCODE_EX2 is to ir_unop_exp2.
It's the weird VP approximation helper opcode.  Just implement it with
OPCODE_POW instead.

Fixes glsl-fs-exp.
This commit is contained in:
Eric Anholt
2010-07-02 17:02:42 -07:00
parent 4e7d5d0e74
commit b0ac07e3de

View File

@@ -625,7 +625,8 @@ ir_to_mesa_visitor::visit(ir_expression *ir)
break;
case ir_unop_exp:
ir_to_mesa_emit_scalar_op1(ir, OPCODE_EXP, result_dst, op[0]);
ir_to_mesa_emit_scalar_op2(ir, OPCODE_POW, result_dst,
src_reg_for_float(M_E), op[0]);
break;
case ir_unop_exp2:
ir_to_mesa_emit_scalar_op1(ir, OPCODE_EX2, result_dst, op[0]);