swr: mark streamout buffers as written
authorIlia Mirkin <imirkin@alum.mit.edu>
Fri, 18 Nov 2016 01:48:40 +0000 (20:48 -0500)
committerIlia Mirkin <imirkin@alum.mit.edu>
Sat, 19 Nov 2016 15:40:37 +0000 (10:40 -0500)
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
src/gallium/drivers/swr/swr_state.cpp

index d64211e..e9ae786 100644 (file)
@@ -682,6 +682,13 @@ swr_update_resource_status(struct pipe_context *pipe,
          swr_resource_read(ib->buffer);
    }
 
+   /* transform feedback buffers */
+   for (uint32_t i = 0; i < ctx->num_so_targets; i++) {
+      struct pipe_stream_output_target *target = ctx->so_targets[i];
+      if (target && target->buffer)
+         swr_resource_write(target->buffer);
+   }
+
    /* texture sampler views */
    for (uint32_t j : {PIPE_SHADER_VERTEX, PIPE_SHADER_FRAGMENT}) {
       for (uint32_t i = 0; i < ctx->num_sampler_views[j]; i++) {