nir/range-analysis: Fix incorrect fadd range result for (ne_zero, ne_zero)
authorIan Romanick <ian.d.romanick@intel.com>
Mon, 12 Aug 2019 19:08:40 +0000 (12:08 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Thu, 29 Aug 2019 20:15:53 +0000 (13:15 -0700)
commit0b4782fccd22b0a01ded1e4cbfe06821bdf19d05
treeafee6aa8ac271bacc334894968cc44c8c4806660
parentef2e235252ea3dbadad79bb48c760bb6c376b97c
nir/range-analysis: Fix incorrect fadd range result for (ne_zero, ne_zero)

Found by inspection.  I tried really, really hard to make a test case
that would trigger this problem, but I was unsuccesful.  It's very hard
to get an instruction to produce a ne_zero result without ne_zero
sources.  The most plausible way is using bcsel.  That proves
problematic because bcsel interprets its sources as integers, so it
cannot currently be used to "clean" values for floating point
instructions.

No shader-db changes on any Intel platform.

Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Fixes: 405de7ccb6c ("nir/range-analysis: Rudimentary value range analysis pass")
src/compiler/nir/nir_range_analysis.c