[Mesa-dev] [PATCH] i965/fs: do SEL optimization only when src type for MOV matches

Matt Turner mattst88 at gmail.com
Tue Jan 7 12:28:49 PST 2014


On Tue, Jan 7, 2014 at 12:25 AM, Tapani Pälli <tapani.palli at intel.com> wrote:
> Fixes a bug where then branch operates with ivec4 while else uses vec4.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=72379
>
> Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
> ---
>  src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp b/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp
> index d314799..a1f7e21 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs_sel_peephole.cpp
> @@ -169,6 +169,12 @@ fs_visitor::opt_peephole_sel()
>              break;
>           }
>
> +         /* check that source types for mov operations match */

Capital C in check. Period to end the sentence.

> +         if(then_mov[i]->src[0].type != else_mov[i]->src[0].type) {

Space between if and (.

> +            movs = i;
> +            break;
> +         }
> +
>           if (!then_mov[i]->src[0].equals(else_mov[i]->src[0])) {
>              /* Only the last source register can be a constant, so if the MOV
>               * in the "then" clause uses a constant, we need to put it in a
> --
> 1.8.3.1

Reviewed-by: Matt Turner <mattst88 at gmail.com>


More information about the mesa-dev mailing list