diff options
author | Brian Paul <[email protected]> | 2013-03-01 15:16:15 -0700 |
---|---|---|
committer | Brian Paul <[email protected]> | 2013-03-01 17:31:32 -0700 |
commit | f6c061261885fed0c83c437e9459ba79618f1b3a (patch) | |
tree | 5e71672e8f8eda705bb472827d62aded793ad4c3 | |
parent | 7616586cff4ced8bd2c5cbbe0a967af556744825 (diff) |
st/mesa: convert ir_triop_lrp to TGSI_OPCODE_LRP
AFAICT, all gallium drivers implement TGSI_OPCODE_LRP.
Tested with softpipe, llvmpipe, svga drivers.
Reviewed-by: Matt Turner <[email protected]>
-rw-r--r-- | src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp index 757bd71aaba..8e3e3b838e8 100644 --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp @@ -1942,6 +1942,10 @@ glsl_to_tgsi_visitor::visit(ir_expression *ir) } break; } + case ir_triop_lrp: + /* note: we have to reorder the three args here */ + emit(ir, TGSI_OPCODE_LRP, result_dst, op[2], op[1], op[0]); + break; case ir_unop_pack_snorm_2x16: case ir_unop_pack_unorm_2x16: case ir_unop_pack_half_2x16: @@ -5189,7 +5193,6 @@ st_link_shader(struct gl_context *ctx, struct gl_shader_program *prog) DIV_TO_MUL_RCP | EXP_TO_EXP2 | LOG_TO_LOG2 | - LRP_TO_ARITH | (options->EmitNoPow ? POW_TO_EXP2 : 0) | (!ctx->Const.NativeIntegers ? INT_DIV_TO_MUL_RCP : 0)); |