nir: Propagate negates up multiplication chains.
total instructions in shared programs: 7112159 -> 7088092 (-0.34%) instructions in affected programs: 1374915 -> 1350848 (-1.75%) helped: 7392 HURT: 621 GAINED: 2 LOST: 2
This commit is contained in:
parent
a74fc3fe8a
commit
6702f1acde
|
@ -269,6 +269,10 @@ optimizations = [
|
|||
(('fabs', ('fsub', 0.0, a)), ('fabs', a)),
|
||||
(('iabs', ('isub', 0, a)), ('iabs', a)),
|
||||
|
||||
# Propagate negation up multiplication chains
|
||||
(('fmul', ('fneg', a), b), ('fneg', ('fmul', a, b))),
|
||||
(('imul', ('ineg', a), b), ('ineg', ('fmul', a, b))),
|
||||
|
||||
# Misc. lowering
|
||||
(('fmod', a, b), ('fsub', a, ('fmul', b, ('ffloor', ('fdiv', a, b)))), 'options->lower_fmod'),
|
||||
(('uadd_carry', a, b), ('b2i', ('ult', ('iadd', a, b), a)), 'options->lower_uadd_carry'),
|
||||
|
|
Loading…
Reference in New Issue