Right, we had to do the same for buffer variables to prevent losing
writes to the underlying buffer.

Reviewed-by: Iago Toral Quiroga <ito...@igalia.com>

On Thu, 2016-01-21 at 16:47 -0800, Jordan Justen wrote:
> Fixes: dEQP-GLES31.functional.compute.basic.shared_atomic_op_multiple_groups
> 
> From: https://android.googlesource.com/platform/external/deqp
> 
> Reported-by: Ilia Mirkin <imir...@alum.mit.edu>
> Signed-off-by: Jordan Justen <jordan.l.jus...@intel.com>
> ---
>  src/glsl/opt_tree_grafting.cpp | 11 ++++++-----
>  1 file changed, 6 insertions(+), 5 deletions(-)
> 
> diff --git a/src/glsl/opt_tree_grafting.cpp b/src/glsl/opt_tree_grafting.cpp
> index cd58213..e4b72b6 100644
> --- a/src/glsl/opt_tree_grafting.cpp
> +++ b/src/glsl/opt_tree_grafting.cpp
> @@ -361,11 +361,12 @@ tree_grafting_basic_block(ir_instruction *bb_first,
>        if (!lhs_var)
>        continue;
>  
> -   if (lhs_var->data.mode == ir_var_function_out ||
> -       lhs_var->data.mode == ir_var_function_inout ||
> -       lhs_var->data.mode == ir_var_shader_out ||
> -       lhs_var->data.mode == ir_var_shader_storage)
> -      continue;
> +      if (lhs_var->data.mode == ir_var_function_out ||
> +          lhs_var->data.mode == ir_var_function_inout ||
> +          lhs_var->data.mode == ir_var_shader_out ||
> +          lhs_var->data.mode == ir_var_shader_storage ||
> +          lhs_var->data.mode == ir_var_shader_shared)
> +         continue;
>  
>        ir_variable_refcount_entry *entry = 
> info->refs->get_variable_entry(lhs_var);
>  


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to