nir/opt_if: run opt_peel_loop_initial_if after all other optimizations
authorRhys Perry <pendingchaos02@gmail.com>
Tue, 12 May 2020 10:10:18 +0000 (11:10 +0100)
committerMarge Bot <eric+marge@anholt.net>
Tue, 19 May 2020 17:46:38 +0000 (17:46 +0000)
commit50bead32b150a869f1c17efbee8476114d1462a7
tree329d3012a34fc727e9b4abb706b8236756d4bf51
parentd221f70299cc4b14316fe83eeb5ae28797421a63
nir/opt_if: run opt_peel_loop_initial_if after all other optimizations

Fixes dEQP-VK.graphicsfuzz.loops-ifs-continues-call with RADV.

opt_if_loop_terminator can cause this optimization or
opt_if_simplification to be run on the non-SSA code.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Fixes: 52c8bc0130a ('nir: make opt_if_loop_terminator() less strict')
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2943
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4757>
.gitlab-ci/deqp-radv-fiji-aco-fails.txt
.gitlab-ci/deqp-radv-navi10-aco-fails.txt
.gitlab-ci/deqp-radv-pitcairn-aco-fails.txt
.gitlab-ci/deqp-radv-polaris10-aco-fails.txt
.gitlab-ci/deqp-radv-raven-aco-fails.txt
.gitlab-ci/deqp-radv-vega10-aco-fails.txt
src/compiler/nir/nir_opt_if.c