Mesa (master): nir: Allow abs/neg in select peephole pass.
Jason Ekstrand
jekstrand at kemper.freedesktop.org
Fri Apr 17 18:08:12 UTC 2015
Module: Mesa
Branch: master
Commit: 4dacb212fdcc82def02b8c9233f94caa5a8a3000
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=4dacb212fdcc82def02b8c9233f94caa5a8a3000
Author: Matt Turner <mattst88 at gmail.com>
Date: Thu Apr 2 10:21:16 2015 -0700
nir: Allow abs/neg in select peephole pass.
total instructions in shared programs: 4314531 -> 4308949 (-0.13%)
instructions in affected programs: 429085 -> 423503 (-1.30%)
helped: 1680
HURT: 0
GAINED: 0
LOST: 111
Reviewed-by: Jason Ekstrand <jason.ekstrand at intel.com>
---
src/glsl/nir/nir_opt_peephole_select.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/glsl/nir/nir_opt_peephole_select.c b/src/glsl/nir/nir_opt_peephole_select.c
index b89451b..f400cfd 100644
--- a/src/glsl/nir/nir_opt_peephole_select.c
+++ b/src/glsl/nir/nir_opt_peephole_select.c
@@ -84,7 +84,9 @@ block_check_for_allowed_instrs(nir_block *block)
case nir_instr_type_alu: {
/* It must be a move operation */
nir_alu_instr *mov = nir_instr_as_alu(instr);
- if (mov->op != nir_op_fmov && mov->op != nir_op_imov)
+ if (mov->op != nir_op_fmov && mov->op != nir_op_imov &&
+ mov->op != nir_op_fneg && mov->op != nir_op_ineg &&
+ mov->op != nir_op_fabs && mov->op != nir_op_iabs)
return false;
/* Can't handle saturate */
More information about the mesa-commit
mailing list