[Mesa-dev] [PATCH 1/3] glsl: Use saved values instead of recomputing them.

Matt Turner mattst88 at gmail.com
Thu Oct 17 01:56:43 CEST 2013


---
 src/glsl/opt_algebraic.cpp | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/src/glsl/opt_algebraic.cpp b/src/glsl/opt_algebraic.cpp
index 3e5802e..b915f3c 100644
--- a/src/glsl/opt_algebraic.cpp
+++ b/src/glsl/opt_algebraic.cpp
@@ -257,11 +257,9 @@ ir_algebraic_visitor::handle_expression(ir_expression *ir)
        * folding.
        */
       if (op_const[0] && !op_const[1])
-	 reassociate_constant(ir, 0, op_const[0],
-			      ir->operands[1]->as_expression());
+	 reassociate_constant(ir, 0, op_const[0], op_expr[1]);
       if (op_const[1] && !op_const[0])
-	 reassociate_constant(ir, 1, op_const[1],
-			      ir->operands[0]->as_expression());
+	 reassociate_constant(ir, 1, op_const[1], op_expr[0]);
       break;
 
    case ir_binop_sub:
@@ -315,11 +313,9 @@ ir_algebraic_visitor::handle_expression(ir_expression *ir)
        * constant folding.
        */
       if (op_const[0] && !op_const[1])
-	 reassociate_constant(ir, 0, op_const[0],
-			      ir->operands[1]->as_expression());
+	 reassociate_constant(ir, 0, op_const[0], op_expr[1]);
       if (op_const[1] && !op_const[0])
-	 reassociate_constant(ir, 1, op_const[1],
-			      ir->operands[0]->as_expression());
+	 reassociate_constant(ir, 1, op_const[1], op_expr[0]);
 
       break;
 
-- 
1.8.3.2



More information about the mesa-dev mailing list