mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-06 19:40:10 +01:00
nir: Simplify 0 >= b2f(a)
This also prevented some regressions with other patches in my local tree. Broadwell / Skylake total instructions in shared programs: 8980835 -> 8980833 (-0.00%) instructions in affected programs: 45 -> 43 (-4.44%) helped: 1 HURT: 0 total cycles in shared programs: 70077904 -> 70077900 (-0.00%) cycles in affected programs: 122 -> 118 (-3.28%) helped: 1 HURT: 0 No changes on earlier platforms. v2: Modify the comments to look more like a proof. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
parent
bf0d60aa11
commit
564a8b8a26
1 changed files with 7 additions and 0 deletions
|
|
@ -101,6 +101,13 @@ optimizations = [
|
|||
(('inot', ('ige', a, b)), ('ilt', a, b)),
|
||||
(('inot', ('ieq', a, b)), ('ine', a, b)),
|
||||
(('inot', ('ine', a, b)), ('ieq', a, b)),
|
||||
|
||||
# 0.0 >= b2f(a)
|
||||
# b2f(a) <= 0.0
|
||||
# b2f(a) == 0.0 because b2f(a) can only be 0 or 1
|
||||
# inot(a)
|
||||
(('fge', 0.0, ('b2f', a)), ('inot', a)),
|
||||
|
||||
(('fge', ('fneg', ('fabs', a)), 0.0), ('feq', a, 0.0)),
|
||||
(('bcsel', ('flt', a, b), a, b), ('fmin', a, b)),
|
||||
(('bcsel', ('flt', a, b), b, a), ('fmax', a, b)),
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue