diff options
author | Ilia Mirkin <[email protected]> | 2016-11-17 20:48:40 -0500 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2016-11-19 10:40:37 -0500 |
commit | ea276512a0c4c95f004e314f12e977786656f015 (patch) | |
tree | 96dba9c01477561884caccfbe26563f91dabc12e /src/gallium/drivers/swr/swr_state.cpp | |
parent | 203c8794a1debc0e45019fe945d1cc55459e6c6f (diff) |
swr: mark streamout buffers as written
Signed-off-by: Ilia Mirkin <[email protected]>
Reviewed-by: Bruce Cherniak <[email protected]>
Diffstat (limited to 'src/gallium/drivers/swr/swr_state.cpp')
-rw-r--r-- | src/gallium/drivers/swr/swr_state.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/swr/swr_state.cpp b/src/gallium/drivers/swr/swr_state.cpp index d64211e0f94..e9ae786164a 100644 --- a/src/gallium/drivers/swr/swr_state.cpp +++ b/src/gallium/drivers/swr/swr_state.cpp @@ -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++) { |