[Mesa-dev] [PATCH] glsl: Disable tree grafting optimization for shared variables

Samuel Pitoiset samuel.pitoiset at gmail.com
Thu Jan 21 23:40:58 PST 2016


Hi Jordan,

Thanks for the patch, it also fixes the following dEQP tests (which are 
related to the multiple groups one):

dEQP-GLES31.functional.compute.basic.shared_atomic_op_multiple_invocation
dEQP-GLES31.functional.compute.basic.shared_atomic_op_single_group
dEQP-GLES31.functional.compute.basic.shared_atomic_op_single_invocation

Tested-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

On 01/22/2016 01:47 AM, 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 <imirkin at alum.mit.edu>
> Signed-off-by: Jordan Justen <jordan.l.justen at 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);
>
>


More information about the mesa-dev mailing list