Mesa (master): st/mesa: convert ir_triop_lrp to TGSI_OPCODE_LRP

Brian Paul brianp at kemper.freedesktop.org
Sat Mar 2 00:35:30 UTC 2013


Module: Mesa
Branch: master
Commit: f6c061261885fed0c83c437e9459ba79618f1b3a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f6c061261885fed0c83c437e9459ba79618f1b3a

Author: Brian Paul <brianp at vmware.com>
Date:   Fri Mar  1 15:16:15 2013 -0700

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 <mattst88 at gmail.com>

---

 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 757bd71..8e3e3b8 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));
 




More information about the mesa-commit mailing list