From 6f4a648694f828a4931cb0fdd2e547c93c94e94e Mon Sep 17 00:00:00 2001 From: Marta Lofstedt Date: Thu, 15 Oct 2015 15:54:55 +0200 Subject: [PATCH 5/9] glsl: Hack Don't try to get duplicate set and key When running ES31-CTS.arrays_of_arrays.InteractionFunctionCalls2. I hit the following assert: glcts: nir/nir_lower_vars_to_ssa.c:462: lower_copies_to_load_store: Assertion `arg_entry' failed. This is because the set and the key end up duplicated, but it is deleted from the set the first time. I don't believe that this patch is the solution, but it hacks away the problem. Signed-off-by: Marta Lofstedt --- src/glsl/nir/nir_lower_vars_to_ssa.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/glsl/nir/nir_lower_vars_to_ssa.c b/src/glsl/nir/nir_lower_vars_to_ssa.c index 5971507..89ea4e7 100644 --- a/src/glsl/nir/nir_lower_vars_to_ssa.c +++ b/src/glsl/nir/nir_lower_vars_to_ssa.c @@ -455,7 +455,7 @@ lower_copies_to_load_store(struct deref_node *node, struct deref_node *arg_node = get_deref_node(copy->variables[i], state); - if (arg_node == NULL) + if (arg_node == NULL || (i == 1 && get_deref_node(copy->variables[0], state) == arg_node)) continue; struct set_entry *arg_entry = _mesa_set_search(arg_node->copies, copy); -- 2.1.4