On Wed, Mar 18, 2015 at 7:39 PM, Jason Ekstrand <ja...@jlekstrand.net> wrote:
> 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.

Well... they're the source of a b2f. Are you saying that's not sufficient?
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to