nir/algebraic: optimize fmul(x, bcsel(c, -1.0, 1.0)) -> bcsel(c, -x, x)
authorDaniel Schürmann <daniel@schuermann.dev>
Wed, 29 Apr 2020 14:38:54 +0000 (15:38 +0100)
committerMarge Bot <eric+marge@anholt.net>
Mon, 20 Jul 2020 15:56:46 +0000 (15:56 +0000)
commit9d22c5ed718abcf98444f9654b912ccb42b2ccdd
tree7ce7b51eaa4c633e2201b12c7bdda8532a14e1eb
parent56ec814b567dbedf3338554e7577f748dd4cf003
nir/algebraic: optimize fmul(x, bcsel(c, -1.0, 1.0)) -> bcsel(c, -x, x)

Totals from affected shaders: (VEGA)
SGPRS: 545712 -> 545712 (0.00 %)
VGPRS: 413092 -> 413116 (0.01 %)
Spilled SGPRs: 10616 -> 10616 (0.00 %)
Spilled VGPRs: 0 -> 0 (0.00 %)
Private memory VGPRs: 0 -> 0 (0.00 %)
Scratch size: 0 -> 0 (0.00 %) dwords per thread
Code Size: 37031684 -> 36984248 (-0.13 %) bytes
LDS: 427 -> 427 (0.00 %) blocks
Max Waves: 54350 -> 54340 (-0.02 %)

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4830>
src/compiler/nir/nir_opt_algebraic.py