i965: Correct scratch space allocation.
authorEric Anholt <eric@anholt.net>
Thu, 21 Oct 2010 22:07:45 +0000 (15:07 -0700)
committerEric Anholt <eric@anholt.net>
Thu, 21 Oct 2010 22:21:28 +0000 (15:21 -0700)
commit4e7252510976d8d3ff12437ea8842129f24d88f5
treec2e50a075fd7ede483e7265f46567cdbc5370d2b
parent0b77d57394a3712851ec271aa7ad353d56f302a1
i965: Correct scratch space allocation.

One, it was allocating increments of 1kb, but per thread scratch space
is a power of two.  Two, the new FS wasn't getting total_scratch set
at all, so everyone thought they had 1kb and writes beyond 1kb would
go stomping on a neighbor thread.

With this plus the previous register spilling for the new FS,
glsl-fs-convolution-1 passes.
src/mesa/drivers/dri/i965/brw_fs.cpp
src/mesa/drivers/dri/i965/brw_wm.c
src/mesa/drivers/dri/i965/brw_wm_state.c