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

Jordan Justen jordan.l.justen at intel.com
Thu Jan 21 16:47:07 PST 2016


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



More information about the mesa-dev mailing list