On Wed, Mar 18, 2015 at 11:37 AM, Matt Turner <matts...@gmail.com> wrote: > Transform this into b2f(and(a, b)). > > total instructions in shared programs: 6205448 -> 6204391 (-0.02%) > instructions in affected programs: 284030 -> 282973 (-0.37%) > helped: 903 > HURT: 6 > --- > src/glsl/nir/nir_opt_algebraic.py | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/src/glsl/nir/nir_opt_algebraic.py > b/src/glsl/nir/nir_opt_algebraic.py > index ef855aa..f956edf 100644 > --- a/src/glsl/nir/nir_opt_algebraic.py > +++ b/src/glsl/nir/nir_opt_algebraic.py > @@ -95,6 +95,8 @@ optimizations = [ > (('fsat', a), ('fmin', ('fmax', a, 0.0), 1.0), 'options->lower_fsat'), > (('fsat', ('fsat', a)), ('fsat', a)), > (('fmin', ('fmax', ('fmin', ('fmax', a, 0.0), 1.0), 0.0), 1.0), ('fmin', > ('fmax', a, 0.0), 1.0)), > + # Emulating booleans > + (('fmul', ('b2f', a), ('b2f', b)), ('b2f', ('iand', a, b))),
Those are only equivalent if the sources are known booleans. Otherwise, no dice. --Jason > # Comparison with the same args. Note that these are not done for > # the float versions because NaN always returns false on float > # inequalities. > -- > 2.0.5 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev