broadcom/vc5: Fix incorrect padding of TF outputs.
authorEric Anholt <eric@anholt.net>
Tue, 21 Nov 2017 23:20:31 +0000 (15:20 -0800)
committerEric Anholt <eric@anholt.net>
Wed, 22 Nov 2017 18:56:31 +0000 (10:56 -0800)
After the first output, we were padding by an extra size of the previous
output.  Fixes piglit ext_transform_feedback-output-type mat4x3[2] and
friends.

src/gallium/drivers/vc5/vc5_program.c

index cf2d1b830b8206616e9d0972839304666e1cd713..a356d0645d8536042855e47daae397cdf09f489f 100644 (file)
@@ -79,6 +79,7 @@ vc5_set_transform_feedback_outputs(struct vc5_uncompiled_shader *so,
                                 slots[slot_count] =
                                         v3d_slot_from_slot_and_component(VARYING_SLOT_POS, 0);
                                 slot_count++;
+                                buffer_offset++;
                         }
 
                         /* Set the coordinate shader up to output the
@@ -92,6 +93,7 @@ vc5_set_transform_feedback_outputs(struct vc5_uncompiled_shader *so,
                                         v3d_slot_from_slot_and_component(slot,
                                                                          output->start_component + j);
                                 slot_count++;
+                                buffer_offset++;
                         }
                 }