i965: Use the nir_move_comparisons pass.
authorKenneth Graunke <kenneth@whitecape.org>
Mon, 8 Aug 2016 21:44:06 +0000 (14:44 -0700)
committerTimothy Arceri <timothy.arceri@collabora.com>
Wed, 11 Jan 2017 22:47:29 +0000 (09:47 +1100)
commitb4c44ff08c1154ff3790de89f29520d178e9e0ef
tree357ca69856e70789172bf95a58346cda2d1ed263
parentb5e682a1efa0a929574e739807ac2b046e004561
i965: Use the nir_move_comparisons pass.

While the below stats are encouraging this pass will also become
very usefull for avoiding regression once
brw_do_channel_expressions() and brw_do_vector_splitting() are
disabled.

On Broadwell:

total instructions in shared programs: 13078787 -> 13060898 (-0.14%)
instructions in affected programs: 1809827 -> 1791938 (-0.99%)
helped: 4527
HURT: 157

total cycles in shared programs: 256562762 -> 256590424 (0.01%)
cycles in affected programs: 159749392 -> 159777054 (0.02%)
helped: 5583
HURT: 2289

total spills in shared programs: 14929 -> 14923 (-0.04%)
spills in affected programs: 62 -> 56 (-9.68%)
helped: 1
HURT: 0

total fills in shared programs: 20144 -> 20141 (-0.01%)
fills in affected programs: 253 -> 250 (-1.19%)
helped: 1
HURT: 3

LOST:   0
GAINED: 2

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/mesa/drivers/dri/i965/brw_nir.c