diff options
author | Francisco Jerez <[email protected]> | 2015-03-18 15:45:16 +0200 |
---|---|---|
committer | Francisco Jerez <[email protected]> | 2015-03-23 14:09:33 +0200 |
commit | 18dc59c21295a2a4acf4b69cb7e7ea502c8dd8c8 (patch) | |
tree | e920712ce40be3676e74a617ce561bcb999fc5c1 /src | |
parent | a3733defbe4f87acd1b6dca716b861f2dfaea05a (diff) |
i965/vec4: Don't lose copy propagation saturate bits for not written components.
Reviewed-by: Abdiel Janulgue <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp b/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp index 036706c6ef5..a1050bb1333 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp +++ b/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp @@ -437,7 +437,7 @@ vec4_visitor::opt_copy_propagation(bool do_constant_prop) * the new value, so clear it. */ bool direct_copy = is_direct_copy(inst); - entries[reg].saturatemask = 0x0; + entries[reg].saturatemask &= ~inst->dst.writemask; for (int i = 0; i < 4; i++) { if (inst->dst.writemask & (1 << i)) { entries[reg].value[i] = direct_copy ? &inst->src[0] : NULL; |