summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2012-12-19 16:59:45 +0100
committerMarek Olšák <maraeo@gmail.com>2012-12-22 00:07:30 +0100
commit42f71b4861b9d01a8f925fea3182fc1a292222f3 (patch)
tree9d92937d633def0ad2f0b6abc3cc7fdba63f14b3
parent9311e55c8ad97329bb2d06a0680f5165de9b21f5 (diff)
r600g: try to fix streamout for the cases where BURST_COUNT > 0
The burst was incorrectly used, because ELEM_SIZE was always 0. I don't know if the burst works, because I don't know of any test which uses it. NOTE: This is a candidate for the stable branches. Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 6a2ec765bd22ae5d94e5fdac8507c659175efa4e) Conflicts: src/gallium/drivers/r600/r600_shader.c
-rw-r--r--src/gallium/drivers/r600/r600_shader.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c
index 1f8ab2b02a5..76e26e8464c 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -1482,7 +1482,7 @@ static int r600_shader_from_tgsi(struct r600_context * rctx, struct r600_pipe_sh
memset(&output, 0, sizeof(struct r600_bytecode_output));
output.gpr = shader->output[so.output[i].register_index].gpr;
- output.elem_size = 0;
+ output.elem_size = so.output[i].num_components;
output.array_base = so.output[i].dst_offset - so.output[i].start_component;
output.type = V_SQ_CF_ALLOC_EXPORT_WORD0_SQ_EXPORT_WRITE;
output.burst_count = 1;