summaryrefslogtreecommitdiffstats
path: root/src/glsl/opt_copy_propagation_elements.cpp
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2013-11-23 09:51:52 -0800
committerKenneth Graunke <kenneth@whitecape.org>2014-01-13 11:38:19 -0800
commit8050584096eec50570bfc0c81926050f27a5dfe5 (patch)
tree0000afe81322fe695bea4d8842fdf76cb9a39de4 /src/glsl/opt_copy_propagation_elements.cpp
parent2e113dfab8c7068e083960fcf0b93418c3d79fa3 (diff)
downloadexternal_mesa3d-8050584096eec50570bfc0c81926050f27a5dfe5.zip
external_mesa3d-8050584096eec50570bfc0c81926050f27a5dfe5.tar.gz
external_mesa3d-8050584096eec50570bfc0c81926050f27a5dfe5.tar.bz2
glsl: Cast ir_call parameters to ir_rvalue, not ir_instruction.
A function call's parameters are always rvalues. ir_rvalue may not always be a subclass of ir_instruction in the future, so we should use the right one. Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Diffstat (limited to 'src/glsl/opt_copy_propagation_elements.cpp')
-rw-r--r--src/glsl/opt_copy_propagation_elements.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/glsl/opt_copy_propagation_elements.cpp b/src/glsl/opt_copy_propagation_elements.cpp
index 7f82a28..a64a9ce 100644
--- a/src/glsl/opt_copy_propagation_elements.cpp
+++ b/src/glsl/opt_copy_propagation_elements.cpp
@@ -296,7 +296,7 @@ ir_copy_propagation_elements_visitor::visit_enter(ir_call *ir)
exec_list_iterator sig_param_iter = ir->callee->parameters.iterator();
foreach_iter(exec_list_iterator, iter, ir->actual_parameters) {
ir_variable *sig_param = (ir_variable *)sig_param_iter.get();
- ir_instruction *ir = (ir_instruction *)iter.get();
+ ir_rvalue *ir = (ir_rvalue *) iter.get();
if (sig_param->data.mode != ir_var_function_out
&& sig_param->data.mode != ir_var_function_inout) {
ir->accept(this);