mesa/src
Dave Airlie 2d05942b74 r600g/sb: implement r600 gpr index workaround. (v3.1)
r600, rv610 and rv630 all have a bug in their GPR indexing
and how the hw inserts access to PV.

If the base index for the src is the same as the dst gpr
in a previous group, then it will use PV instead of using
the indexed gpr correctly.

The workaround is to insert a NOP when you detect this.

v2: add second part of fix detecting DST rel writes followed
by same src base index reads.

v3: forget adding stuff to structs, just iterate over the
previous node group again, makes it more obvious.
v3.1: drop local_nop.

Fixes ~200 piglit regressions on rv635 since SB was introduced.

Reviewed-By: Glenn Kennard <glenn.kennard@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
(cherry picked from commit 3c8ef3a74b)
2015-01-07 17:39:52 +00:00
..
egl egl: remove egl_gallium from the loader 2014-11-14 16:16:12 +01:00
gallium r600g/sb: implement r600 gpr index workaround. (v3.1) 2015-01-07 17:39:52 +00:00
gbm gbm/dri: cleanup memory leak on teardown 2014-11-07 18:32:07 +00:00
getopt
glsl linker: Assign varying locations geometry shader inputs for SSO 2014-12-21 21:18:09 +00:00
glx Revert "glx/dri3: Request non-vsynced Present for swapinterval zero. (v3)" 2014-12-30 01:03:14 +00: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 mapi/glapi: Fix dll linkage of GLES1 symbols. 2014-11-28 17:28:20 +00:00
mesa st/mesa: fix GL_PRIMITIVE_RESTART_FIXED_INDEX 2015-01-07 17:04:21 +00:00
util util: Implement unreachable for MSVC using __assume 2014-11-05 09:36:04 -08: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