Reviewed-by: Connor Abbott <cwabbo...@gmail.com>
On Thu, Jul 6, 2017 at 4:48 PM, Matt Turner <matts...@gmail.com> wrote: > Two of the ARB_shader_ballot piglit tests hit the find_lsb case, > removing some of the noise allowed me to better debug the test when it > was failing. > --- > src/compiler/nir/nir_opt_algebraic.py | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/src/compiler/nir/nir_opt_algebraic.py > b/src/compiler/nir/nir_opt_algebraic.py > index fe6e33d313..df5854270c 100644 > --- a/src/compiler/nir/nir_opt_algebraic.py > +++ b/src/compiler/nir/nir_opt_algebraic.py > @@ -357,6 +357,17 @@ optimizations = [ > (('~fadd', '#a', ('fadd', b, '#c')), ('fadd', ('fadd', a, c), b)), > (('iadd', '#a', ('iadd', b, '#c')), ('iadd', ('iadd', a, c), b)), > > + # By definition... > + (('bcsel', ('ige', ('find_lsb', a), 0), ('find_lsb', a), -1), > ('find_lsb', a)), > + (('bcsel', ('ige', ('ifind_msb', a), 0), ('ifind_msb', a), -1), > ('ifind_msb', a)), > + (('bcsel', ('ige', ('ufind_msb', a), 0), ('ufind_msb', a), -1), > ('ufind_msb', a)), > + > + (('bcsel', ('ine', a, 0), ('find_lsb', a), -1), ('find_lsb', a)), > + (('bcsel', ('ine', a, 0), ('ifind_msb', a), -1), ('ifind_msb', a)), > + (('bcsel', ('ine', a, 0), ('ufind_msb', a), -1), ('ufind_msb', a)), > + > + (('bcsel', ('ine', a, -1), ('ifind_msb', a), -1), ('ifind_msb', a)), > + > # Misc. lowering > (('fmod@32', a, b), ('fsub', a, ('fmul', b, ('ffloor', ('fdiv', a, b)))), > 'options->lower_fmod32'), > (('fmod@64', a, b), ('fsub', a, ('fmul', b, ('ffloor', ('fdiv', a, b)))), > 'options->lower_fmod64'), > -- > 2.13.0 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev