i965/fs: Reduce restrictions on interference in register coalescing.
authorMatt Turner <mattst88@gmail.com>
Wed, 16 Apr 2014 05:46:55 +0000 (22:46 -0700)
committerMatt Turner <mattst88@gmail.com>
Fri, 18 Apr 2014 16:16:19 +0000 (09:16 -0700)
commitf770123f58b46459e8dbd27525162ee8ba89f30b
tree47cbcf9f45679e8516ffae58d1a95316af303d9a
parent55de1c035cbca2b7087b3aa21a8c3dfc900a4ad9
i965/fs: Reduce restrictions on interference in register coalescing.

We previously only allowed coalescing registers that interfere (i.e.,
whose live ranges overlap) if the destination register's live range was
entirely inside the source's live range. This is unnecessary -- we only
need to check for interfering writes in the intersection of their live
ranges.

total instructions in shared programs: 1639470 -> 1638453 (-0.06%)
instructions in affected programs:     84751 -> 83734 (-1.20%)

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