diff options
author | Eric Anholt <[email protected]> | 2010-08-05 12:24:36 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2010-08-05 12:56:03 -0700 |
commit | b259eb28049fc06ebc75a7714834b9ed037a3454 (patch) | |
tree | 39902c665b8ca45b37c080a127e1c934a44290f7 /src/glsl | |
parent | 9f82806c7b5109553cf806a5652e6b6198665094 (diff) |
glsl2: Don't tree-grafting out assignment to an out variable.
Fixes:
glsl-deadcode-varying.
Diffstat (limited to 'src/glsl')
-rw-r--r-- | src/glsl/ir_tree_grafting.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/glsl/ir_tree_grafting.cpp b/src/glsl/ir_tree_grafting.cpp index 38034a61977..1a742f412cb 100644 --- a/src/glsl/ir_tree_grafting.cpp +++ b/src/glsl/ir_tree_grafting.cpp @@ -319,6 +319,10 @@ tree_grafting_basic_block(ir_instruction *bb_first, if (!lhs_var) continue; + if (lhs_var->mode == ir_var_out || + lhs_var->mode == ir_var_inout) + continue; + struct variable_entry *entry = info->refs->get_variable_entry(lhs_var); if (!entry->declaration || |