i965/reg_allocate: Use make_reg_conflicts_transitive
authorJason Ekstrand <jason.ekstrand@intel.com>
Sat, 15 Aug 2015 16:50:11 +0000 (09:50 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Wed, 19 Aug 2015 00:48:47 +0000 (17:48 -0700)
commitc3b21f2d56d77c8c11115bf110a5e25e9dd7e3d5
treef743b48918059ccd38da875b592e051d0a53d095
parent9b49284c223b284295675775d4344f066b4455db
i965/reg_allocate: Use make_reg_conflicts_transitive

Instead of adding transitive conflicts as we go, we now add regular
conflicts and them make them all transitive at the end.  This reduces
screen creation time substantially on BDW.  The time spent in eglInitialize
is reduced from 27.78 ms/call to 9.92 ms/call in debug mode and from 13.15
ms/call to 4.54 ms/call in release mode (about 65% in either case).

Reviewed-by: Eric Anholt <eric@anholt.net>
src/mesa/drivers/dri/i965/brw_fs_reg_allocate.cpp
src/mesa/drivers/dri/i965/brw_vec4_reg_allocate.cpp