i965/wm: use proper API buffer size for the surfaces.
authorSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Tue, 15 Dec 2015 11:51:48 +0000 (12:51 +0100)
committerSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Mon, 4 Jan 2016 06:52:24 +0000 (07:52 +0100)
commit8cf2e892fca20c4776b4a07c39918343cb2d4e0e
treebffd4384a454c6c752adb109a1c1cc9bb2b6016a
parent86fa48426cef42d7224139603b52a7d16bd35eb5
i965/wm: use proper API buffer size for the surfaces.

Commit 5bb5eeea fixes a bug indicating that the surfaces should have the
API buffer size. Hovewer it picked the wrong value.

This patch adds a new variable, which takes into account
glBindBufferRange() values. This patch fixes the following CTS
regressions:

ES31-CTS.shader_storage_buffer_object.advanced-unsizedArrayLength-cs-std430-vec-bindrangeOffset
ES31-CTS.shader_storage_buffer_object.advanced-unsizedArrayLength-cs-std430-vec-bindrangeSize

Signed-off-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: Marta Lofstedt <marta.lofstedt@intel.com>
src/mesa/drivers/dri/i965/brw_wm_surface_state.c
src/mesa/drivers/dri/i965/intel_buffer_objects.c
src/mesa/main/bufferobj.c
src/mesa/main/mtypes.h