summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2011-08-09 10:57:09 -0700
committerEric Anholt <[email protected]>2011-08-16 13:04:42 -0700
commit6408b0295f5c8be6fea891a025d79752484721b6 (patch)
tree895f88b677eb34c2b418023f277486b997fffa7f /src/mesa/drivers
parent7b91eefe7cbe771397684b5970f7c04313baa2f0 (diff)
i965/vs: Fix implementation of ir_unop_any.
We were inheriting whatever previous predicate existed.
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
index 049af6c3992..fde1d67759a 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
@@ -998,7 +998,9 @@ vec4_visitor::visit(ir_expression *ir)
break;
case ir_unop_any:
- emit(BRW_OPCODE_CMP, dst_null_d(), op[0], src_reg(0));
+ inst = emit(BRW_OPCODE_CMP, dst_null_d(), op[0], src_reg(0));
+ inst->conditional_mod = BRW_CONDITIONAL_NZ;
+
emit(BRW_OPCODE_MOV, result_dst, src_reg(0));
inst = emit(BRW_OPCODE_MOV, result_dst, src_reg(1));