glsl: Generate correct ir_binop_vector_extract code for out and inout parameters
authorIan Romanick <ian.d.romanick@intel.com>
Sat, 23 Mar 2013 00:45:52 +0000 (17:45 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Mon, 13 May 2013 19:05:19 +0000 (12:05 -0700)
commit1e773626eee2076e791737f86ba78c410a60aa19
treef9be9bfbf3c59279ea3c3910db62719ef3f2dd98
parentc3bb07f875075b08a0b13f47be95e0c49edb6555
glsl: Generate correct ir_binop_vector_extract code for out and inout parameters

Like with type conversions on out parameters, some extra copies need to
occur to handle these cases.  The fundamental problem is that
ir_binop_vector_extract is not an lvalue, but out and inout parameters
must be lvalues.  A previous patch delt with a similar problem in the
LHS of ir_assignment.

v2: Convert tabs to spaces.  Suggested by Eric.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/glsl/ast_function.cpp