From: Ian Romanick <ian.d.roman...@intel.com> Unlike the much older -abs(a) >= 0.0 transformation, this is not precise. The behavior changes if the source is NaN.
No shader-db changes on any platform. Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> --- src/compiler/nir/nir_opt_algebraic.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/compiler/nir/nir_opt_algebraic.py b/src/compiler/nir/nir_opt_algebraic.py index 7fc4ff1d407..c4f46b56d95 100644 --- a/src/compiler/nir/nir_opt_algebraic.py +++ b/src/compiler/nir/nir_opt_algebraic.py @@ -197,7 +197,7 @@ optimizations = [ # fabs(a) > 0.0 # fabs(a) != 0.0 because fabs(a) must be >= 0 # a != 0.0 - (('flt', 0.0, ('fabs', a)), ('fne', a, 0.0)), + (('~flt', 0.0, ('fabs', a)), ('fne', a, 0.0)), (('fmax', ('b2f(is_used_once)', a), ('b2f', b)), ('b2f', ('ior', a, b))), (('fmax', ('fneg(is_used_once)', ('b2f(is_used_once)', a)), ('fneg', ('b2f', b))), ('fneg', ('b2f', ('ior', a, b)))), -- 2.14.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev