From c97632642a7d84a8a21ffde37b3907632e0d01c0 Mon Sep 17 00:00:00 2001 From: Vadim Girlin Date: Wed, 18 Jan 2012 23:17:29 +0400 Subject: [PATCH] r600g: fix combined MEM_STREAM instructions BURST_COUNT is clipped with ARRAY_SIZE, so set it to the max value to avoid clipping. Signed-off-by: Vadim Girlin Signed-off-by: Alex Deucher --- src/gallium/drivers/r600/r600_shader.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 5819c2bc1a0..cfcca36cb25 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -1014,7 +1014,9 @@ static int r600_shader_from_tgsi(struct r600_pipe_context * rctx, struct r600_pi output.type = V_SQ_CF_ALLOC_EXPORT_WORD0_SQ_EXPORT_WRITE; output.burst_count = 1; output.barrier = 1; - output.array_size = 0; + /* array_size is an upper limit for the burst_count + * with MEM_STREAM instructions */ + output.array_size = 0xFFF; output.comp_mask = (1 << so.output[i].num_components) - 1; if (ctx.bc->chip_class >= EVERGREEN) { switch (so.output[i].output_buffer) {