From: Michel Dänzer <michel.daen...@amd.com>

The value was too small by 1 in some cases (non-first of several vertex
elements interleaved in a single buffer).

Fixes intermittent incorrect geometry in many apps, e.g. piglit
spec/EXT_texture_snorm/fbo-generatemipmap-formats.

Signed-off-by: Michel Dänzer <michel.daen...@amd.com>
---
 src/gallium/drivers/radeonsi/si_state_draw.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_state_draw.c 
b/src/gallium/drivers/radeonsi/si_state_draw.c
index 4ae29b8..eb6db72 100644
--- a/src/gallium/drivers/radeonsi/si_state_draw.c
+++ b/src/gallium/drivers/radeonsi/si_state_draw.c
@@ -439,7 +439,7 @@ static void si_vertex_buffer_update(struct r600_context 
*rctx)
                si_pm4_sh_data_add(pm4, va & 0xFFFFFFFF);
                si_pm4_sh_data_add(pm4, (S_008F04_BASE_ADDRESS_HI(va >> 32) |
                                         S_008F04_STRIDE(vb->stride)));
-               si_pm4_sh_data_add(pm4, (vb->buffer->width0 - offset) /
+               si_pm4_sh_data_add(pm4, (vb->buffer->width0 - 
vb->buffer_offset) /
                                         MAX2(vb->stride, 1));
                si_pm4_sh_data_add(pm4, rctx->vertex_elements->rsrc_word3[i]);
 
-- 
1.7.10.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to