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

Eric Anholt eric at anholt.net
Tue Oct 22 03:17:32 CEST 2013


Matt Turner <mattst88 at gmail.com> writes:

> ---
>  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;

Series is:

Reviewed-by: Eric Anholt <eric at anholt.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20131021/2c56a1d5/attachment.pgp>


More information about the mesa-dev mailing list