From 746e68c50b4ae1566b342fbc965557b6dbcfaa2e Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 18 Oct 2010 11:13:26 -0700 Subject: i965: Fix a weirdness in NOT handling. XOR makes much more sense. Note that the previous code would have failed for not(not(x)), but that gets optimized out. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/mesa/drivers') diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index c9e109871ad..2224dc7a0e9 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -720,7 +720,7 @@ fs_visitor::visit(ir_expression *ir) /* Note that BRW_OPCODE_NOT is not appropriate here, since it is * ones complement of the whole register, not just bit 0. */ - emit(fs_inst(BRW_OPCODE_ADD, this->result, op[0], fs_reg(-1))); + emit(fs_inst(BRW_OPCODE_XOR, this->result, op[0], fs_reg(1))); break; case ir_unop_neg: op[0].negate = !op[0].negate; -- cgit v1.2.3