summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers
diff options
context:
space:
mode:
authorFrancisco Jerez <[email protected]>2015-03-18 15:51:45 +0200
committerFrancisco Jerez <[email protected]>2015-03-23 14:09:33 +0200
commit7526ee36bcb89c867f4ec94f4585952195429841 (patch)
tree2f6f0aafe3be668746d01020d385c16e6932f38f /src/mesa/drivers
parent24073b2cd7c15d989a40c1b7bc30e8be200ff328 (diff)
i965/vec4: Add argument index and type checks to SEL saturate propagation.
SEL saturate propagation already implicitly relies on these assumptions. Reviewed-by: Abdiel Janulgue <[email protected]>
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp5
1 files changed, 4 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 73b4f53f04b..478ae09b677 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_copy_propagation.cpp
@@ -343,7 +343,10 @@ try_copy_propagate(struct brw_context *brw, vec4_instruction *inst,
*/
switch(inst->opcode) {
case BRW_OPCODE_SEL:
- if (inst->src[1].file != IMM ||
+ if (arg != 0 ||
+ inst->src[0].type != BRW_REGISTER_TYPE_F ||
+ inst->src[1].file != IMM ||
+ inst->src[1].type != BRW_REGISTER_TYPE_F ||
inst->src[1].fixed_hw_reg.dw1.f < 0.0 ||
inst->src[1].fixed_hw_reg.dw1.f > 1.0) {
return false;