On Tue, Jul 21, 2015 at 9:53 PM, Connor Abbott <cwabbo...@gmail.com> wrote: > This is another spin of my dead control flow elimination series, this > time based on the control flow modification series I sent out earlier. > It's much shorter, since it now uses the much-more-reusable modification > API, rather than a few ad-hoc functions to do what it needs to do. The > changes themselves were relatively minor, however. > > Like before, the last patch is for testing purposes only; it lobotomizes > the GLSL IR pass that does roughly the equivalent thing, so that the NIR > version gets more exposure. It causes one extra piglit failure, but > that's expected and not due to the NIR pass. The constant folding test > expects the compiler to optimize away a function call before link time, > but after disabling the optimization, that no longer happens. Jenkins > reports that piglit.spec.arb_shader_atomic_counters.semantics also > fails, but only on one platform and I couldn't reproduce it so it seems > like a spurious failure. Other than that, there are no piglit > regressions.
Oh, and I forgot... the series is also available at git://people.freedesktop.org/~cwabbott0/mesa nir-dead-cf-v5 > > Connor Abbott (7): > nir: add an optimization for removing dead control flow > nir/dead_cf: delete code that's unreachable due to jumps > nir: add nir_block_get_following_loop() helper > nir: add a helper for iterating over blocks in a cf node > nir/dead_cf: add support for removing useless loops > i965/fs/nir: enable the dead control flow optimization > XXX disable opt_if_simplification > > src/glsl/Makefile.sources | 1 + > src/glsl/glsl_parser_extras.cpp | 2 +- > src/glsl/nir/nir.c | 23 +++ > src/glsl/nir/nir.h | 6 + > src/glsl/nir/nir_opt_dead_cf.c | 359 > ++++++++++++++++++++++++++++++++++++ > src/mesa/drivers/dri/i965/brw_nir.c | 2 + > 6 files changed, 392 insertions(+), 1 deletion(-) > create mode 100644 src/glsl/nir/nir_opt_dead_cf.c > > -- > 2.4.3 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev