summaryrefslogtreecommitdiffstats
path: root/src/compiler/glsl/ir_constant_expression.cpp
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2016-06-27 14:42:57 -0700
committerMatt Turner <[email protected]>2016-07-26 12:12:27 -0700
commitd1f6f656973a2e18641441e3c97b30799a82de52 (patch)
tree9865209c0ac9013e682cde4862ed254a3e1c9a68 /src/compiler/glsl/ir_constant_expression.cpp
parent5d76690f170de9acc541aa6b4a507ccd20a78158 (diff)
glsl: Separate overlapping sentinel nodes in exec_list.
I do appreciate the cleverness, but unfortunately it prevents a lot more cleverness in the form of additional compiler optimizations brought on by -fstrict-aliasing. No difference in OglBatch7 (n=20). Co-authored-by: Davin McCall <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/compiler/glsl/ir_constant_expression.cpp')
-rw-r--r--src/compiler/glsl/ir_constant_expression.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/compiler/glsl/ir_constant_expression.cpp b/src/compiler/glsl/ir_constant_expression.cpp
index d961aa96a0b..ea50087f4c0 100644
--- a/src/compiler/glsl/ir_constant_expression.cpp
+++ b/src/compiler/glsl/ir_constant_expression.cpp
@@ -2062,7 +2062,7 @@ ir_function_signature::constant_expression_value(exec_list *actual_parameters, s
* have to use the variable objects from the object with the body,
* but the parameter instanciation on the current object.
*/
- const exec_node *parameter_info = origin ? origin->parameters.head : parameters.head;
+ const exec_node *parameter_info = origin ? origin->parameters.get_head_raw() : parameters.get_head_raw();
foreach_in_list(ir_rvalue, n, actual_parameters) {
ir_constant *constant = n->constant_expression_value(variable_context);