i965/fs: Simplify interference scan in register coalescing.
authorMatt Turner <mattst88@gmail.com>
Wed, 9 Apr 2014 21:31:10 +0000 (14:31 -0700)
committerMatt Turner <mattst88@gmail.com>
Fri, 18 Apr 2014 16:16:19 +0000 (09:16 -0700)
commit5ff1e446d44bb9d50f84883c7058635cb070e069
tree2c1f6e7c2267bbefbdc214b01079e04ac03b705c
parent04a4e43eb22c7b78c0b9ab4e6b722747b5c4ce27
i965/fs: Simplify interference scan in register coalescing.

We were starting at the beginning of the instruction list, rather than
with the MOV instruction itself. This allows us to coalesce after
control flow.

Excluding the shaders from an unreleased title, the shader-db results:

total instructions in shared programs: 1603791 -> 1594215 (-0.60%)
instructions in affected programs:     678772 -> 669196 (-1.41%)
GAINED:                                5
LOST:                                  0

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_fs_register_coalesce.cpp