WIP: freedreno/a3xx: incorrect scissor for binning pass
authorRob Clark <robclark@freedesktop.org>
Wed, 5 Mar 2014 16:29:45 +0000 (11:29 -0500)
committerRob Clark <robclark@freedesktop.org>
Wed, 5 Mar 2014 17:37:21 +0000 (12:37 -0500)
commit4de1e5eddcb76e377cffbb7f3bd87a88a575dae2
treea7a9a3eed3f936e2a5a3c7f26987d4e3375b9cf4
parent12d55d5f19368de7697f2e6df7d4ff98929112b1
WIP: freedreno/a3xx: incorrect scissor for binning pass

If scissor optimization is used (to avoid bringing scissored portions of
the render target into GMEM and then back out to system memory) in
combination with hw binning pass, the result would be a scissor mismatch
between binning pass and rendering pass.  This would cause rendering
bugs in some scenarios with (for example) gnome-shell.

I would have expected that simply using the correct screen-scissor
during the binning pass would be enough, but seems like there is
something else missing.  So for now disable binning pass if scissor
optimization is used.
src/gallium/drivers/freedreno/a3xx/fd3_gmem.c
src/gallium/drivers/freedreno/freedreno_gmem.c
src/gallium/drivers/freedreno/freedreno_gmem.h