[Mesa-dev] [PATCH 09/28] nir/algebraic: fix (inf - inf) = NaN case
Samuel Iglesias Gonsálvez
siglesias at igalia.com
Wed Dec 5 15:55:24 UTC 2018
If we have (inf - inf) we should return NaN, not 0.0. Same for
(NaN - NaN) case.
Fixes tests in Vulkan CTS that produce such kind subtractions.
Signed-off-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
---
src/compiler/nir/nir_opt_algebraic.py | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/compiler/nir/nir_opt_algebraic.py b/src/compiler/nir/nir_opt_algebraic.py
index 747f1751086..e4f77e7b952 100644
--- a/src/compiler/nir/nir_opt_algebraic.py
+++ b/src/compiler/nir/nir_opt_algebraic.py
@@ -91,7 +91,6 @@ optimizations = [
(('usadd_4x8', a, ~0), ~0),
(('~fadd', ('fmul', a, b), ('fmul', a, c)), ('fmul', a, ('fadd', b, c))),
(('iadd', ('imul', a, b), ('imul', a, c)), ('imul', a, ('iadd', b, c))),
- (('~fadd', ('fneg', a), a), 0.0),
(('iadd', ('ineg', a), a), 0),
(('iadd', ('ineg', a), ('iadd', a, b)), b),
(('iadd', a, ('iadd', ('ineg', a), b)), b),
@@ -891,7 +890,6 @@ before_ffma_optimizations = [
(('~fadd', ('fmul', a, b), ('fmul', a, c)), ('fmul', a, ('fadd', b, c))),
(('iadd', ('imul', a, b), ('imul', a, c)), ('imul', a, ('iadd', b, c))),
- (('~fadd', ('fneg', a), a), 0.0),
(('iadd', ('ineg', a), a), 0),
(('iadd', ('ineg', a), ('iadd', a, b)), b),
(('iadd', a, ('iadd', ('ineg', a), b)), b),
--
2.19.1
More information about the mesa-dev
mailing list