772cd3104852302aedf87895cef7828ccacedee2 |
|
12-Jan-2017 |
Timothy Arceri <timothy.arceri@collabora.com> |
nir: optimise min/max fadd combos shader-db results BDW: total instructions in shared programs: 13060410 -> 13060313 (-0.00%) instructions in affected programs: 24533 -> 24436 (-0.40%) helped: 88 HURT: 0 total cycles in shared programs: 256585692 -> 256586698 (0.00%) cycles in affected programs: 647290 -> 648296 (0.16%) helped: 35 HURT: 30 Reviewed-by: Matt Turner <mattst88@gmail.com>
/external/mesa3d/src/compiler/nir/nir_search_helpers.h
|
de8b03f5fbd32f12a0b8257a2ae8e4e26b5ca05b |
|
08-Jan-2017 |
Timothy Arceri <timothy.arceri@collabora.com> |
nir: don't turn ieq/ine into inot if used by an if Otherwise we will end up with an extra instruction to compare the result of the inot. On BDW: total instructions in shared programs: 13060620 -> 13060481 (-0.00%) instructions in affected programs: 103379 -> 103240 (-0.13%) helped: 127 HURT: 0 total cycles in shared programs: 256590950 -> 256587408 (-0.00%) cycles in affected programs: 11324730 -> 11321188 (-0.03%) helped: 114 HURT: 21 Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/compiler/nir/nir_search_helpers.h
|
7acc8652268205a266068ea4d059eccce43e1f78 |
|
03-Jan-2017 |
Timothy Arceri <timothy.arceri@collabora.com> |
nir: add late opt to turn inot/b2f combos back to bcsel We turn these from bcsel into inot/b2f combos in order for other optimisation passes to get further. Once we have finished turn the ones that remain and are used in more than a single expression back into a bcsel. On BDW: total instructions in shared programs: 13060965 -> 13060297 (-0.01%) instructions in affected programs: 835701 -> 835033 (-0.08%) helped: 670 HURT: 2 total cycles in shared programs: 256599536 -> 256598006 (-0.00%) cycles in affected programs: 114655488 -> 114653958 (-0.00%) helped: 419 HURT: 240 LOST: 0 GAINED: 1 The 2 HURT is because inserting bcsel creates the only use of const 1.0 in two shaders from tri-of-friendship-and-madness. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/compiler/nir/nir_search_helpers.h
|
ac6646129f71b83e8e4d737db5ef82d9c9ea516b |
|
30-Nov-2016 |
Matt Turner <mattst88@gmail.com> |
nir: Move fsat outside of fmin/fmax if second arg is 0 to 1. instructions in affected programs: 550 -> 544 (-1.09%) helped: 6 cycles in affected programs: 6952 -> 6850 (-1.47%) helped: 6 Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/compiler/nir/nir_search_helpers.h
|
dfbae7d64f4d563bc65af338cdcb217f10474c1c |
|
07-May-2016 |
Rob Clark <robclark@freedesktop.org> |
nir/algebraic: support for power-of-two optimizations Some optimizations, like converting integer multiply/divide into left/ right shifts, have additional constraints on the search expression. Like requiring that a variable is a constant power of two. Support these cases by allowing a fxn name to be appended to the search var expression (ie. "a#32(is_power_of_two)"). Signed-off-by: Rob Clark <robclark@freedesktop.org> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/compiler/nir/nir_search_helpers.h
|