diff options
author | Dave Airlie <[email protected]> | 2019-08-22 11:28:40 +1000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2019-08-27 12:30:16 +1000 |
commit | 6c2fa01b9c22dc5f4b701a4a8e701c92b6ac182d (patch) | |
tree | e957aa008da71f438a5912b4ba384446dfb377a3 | |
parent | b9bf236c712a4cb3ea85304c425149919b0258cb (diff) |
llvmpipe: flush on api memorybarrier.
Until we have somewhere we can do better, just hit it with a hammer.
Reviewed-by: Roland Scheidegger <[email protected]>
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_texture.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_texture.c b/src/gallium/drivers/llvmpipe/lp_texture.c index ca15d785055..3a182b67384 100644 --- a/src/gallium/drivers/llvmpipe/lp_texture.c +++ b/src/gallium/drivers/llvmpipe/lp_texture.c @@ -768,6 +768,13 @@ llvmpipe_resource_size(const struct pipe_resource *resource) return size; } +static void +llvmpipe_memory_barrier(struct pipe_context *pipe, + unsigned flags) +{ + /* this may be an overly large hammer for this nut. */ + llvmpipe_finish(pipe, "barrier"); +} #ifdef DEBUG void @@ -824,4 +831,6 @@ llvmpipe_init_context_resource_funcs(struct pipe_context *pipe) pipe->transfer_flush_region = u_default_transfer_flush_region; pipe->buffer_subdata = u_default_buffer_subdata; pipe->texture_subdata = u_default_texture_subdata; + + pipe->memory_barrier = llvmpipe_memory_barrier; } |