mesa/src
Jason Ekstrand 5d1046291a i965/fs: Compute q-values for register allocation manually
Previously, we were allowing the register allocation code to do the
computation for us in ra_set_finalize.  However, the runtime for this
computation is O(c^4 * g) where c is the number of classes and g is the
number of GRF registers.  However, these q-values are directly computable
based on the way we lay out our register classes so there is no need for
the aweful runtime algorithm.

We were doing ok until commit 7210583eb where we bumped the number of
register classes from 11 to 16.  While startup times don't normally matter,
this caused piglit to take 4 times as long to run on Bay Trail.  This patch
should make generating the ra_set much faster and melt the piglit run
times.

v2: Fixed a couple of bugs.  I have now verified that the same q-values are
generated both ways.

Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
2014-10-24 16:25:31 -07:00
..
egl util: Include in Android builds 2014-10-03 01:25:28 +01:00
gallium llvmpipe: Ensure the packed input of the lp_test_format is aligned. 2014-10-24 21:35:23 +01:00
gbm gbm: Log at least one dlerror() when we fail to open any drivers. 2014-07-30 22:31:30 -07:00
getopt
glsl glsl: Use signed array index in update_max_array_access() 2014-10-22 16:13:37 -07:00
glx glx: Fix glxUseXFont for glxWindow and glxPixmaps 2014-10-13 22:05:58 -06:00
gtest gtest: Update to 1.7.0. 2014-04-14 00:06:53 -07:00
hgl gallium/targets: Break haiku state_tracker out to own directory 2014-08-28 21:27:29 -04:00
loader loader: Check dlsym() did not fail in libudev_get_device_name_for_fd() 2014-09-23 10:25:02 +03:00
mapi mesa: Implement ARB_clip_control. 2014-10-24 19:21:21 +02:00
mesa i965/fs: Compute q-values for register allocation manually 2014-10-24 16:25:31 -07:00
util util: Use reg_belongs_to_class instead of BITSET_TEST 2014-10-24 16:23:08 -07:00
Makefile.am automake: handle gallium SUBDIRs in gallium/Makefile 2014-08-13 00:46:54 +01:00
SConscript util: Move ralloc to a new src/util directory. 2014-08-04 11:06:58 -07:00