nir: Allow opt_peephole_select to work on empty blocks.
authorEric Anholt <eric@anholt.net>
Thu, 28 Jul 2016 00:26:59 +0000 (17:26 -0700)
committerEric Anholt <eric@anholt.net>
Wed, 3 Aug 2016 17:25:08 +0000 (10:25 -0700)
commit9128acfb5781c43abd3ffe3ef74ee1d32138f6bc
treeff5020804fbb030f17cba1045acaac862567200a
parent36b9eb82c1077af4e30182e13e77e6890ad30105
nir: Allow opt_peephole_select to work on empty blocks.

nir_opt_peephole_select has the job of removing IF statements with no side
effects.  However, if the IF statement's successor didn't have any
instructions in it, we were skipping it, which occurred in mupen64 on vc4
with glsl_to_nir enabled:

instructions in affected programs:     6134 -> 4120 (-32.83%)
total uniforms in shared programs: 38268 -> 38219 (-0.13%)

No changes on Haswell shader-db.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/compiler/nir/nir_opt_peephole_select.c