iris: Implement DrawTransformFeedback()

We get the count by dividing the offset by the stride.
This commit is contained in:
Kenneth Graunke
2018-12-04 22:19:33 -08:00
parent 2e103fff63
commit 5307ff6a5f
5 changed files with 61 additions and 21 deletions

View File

@@ -314,6 +314,9 @@ struct iris_stream_output_target {
/** Storage holding the offset where we're writing in the buffer */
struct iris_state_ref offset;
/** Stride (dwords-per-vertex) during this transform feedback operation */
uint16_t stride;
};
/**
@@ -513,6 +516,9 @@ struct iris_context {
/** 3DSTATE_STREAMOUT and 3DSTATE_SO_DECL_LIST packets */
uint32_t *streamout;
/** Current strides for each streamout buffer */
uint16_t *streamout_strides;
/** The SURFACE_STATE for a 1x1x1 null surface. */
struct iris_state_ref unbound_tex;