aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_pipe.h
diff options
context:
space:
mode:
authorSonny Jiang <[email protected]>2018-12-03 12:36:33 -0500
committerMarek Olšák <[email protected]>2019-01-22 12:24:35 -0500
commit1b25d340b791ad8350bdfb27f1a91ac79fa17748 (patch)
tree5d8eb231e74794d068f8a3142a771c035530e9ba /src/gallium/drivers/radeonsi/si_pipe.h
parent8daf5bb209b0838fc970c68b99a3f53a78982def (diff)
radeonsi: use compute for resource_copy_region when possible
v2: marek: fix snorm8 blits Signed-off-by: Sonny Jiang <[email protected]> Signed-off-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_pipe.h')
-rw-r--r--src/gallium/drivers/radeonsi/si_pipe.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h
index 37eb15f539e..23052aa7192 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.h
+++ b/src/gallium/drivers/radeonsi/si_pipe.h
@@ -800,6 +800,8 @@ struct si_context {
void *vs_blit_texcoord;
void *cs_clear_buffer;
void *cs_copy_buffer;
+ void *cs_copy_image;
+ void *cs_copy_image_1d_array;
struct si_screen *screen;
struct pipe_debug_callback debug;
struct ac_llvm_compiler compiler; /* only non-threaded compilation */
@@ -1170,6 +1172,13 @@ void si_clear_buffer(struct si_context *sctx, struct pipe_resource *dst,
void si_copy_buffer(struct si_context *sctx,
struct pipe_resource *dst, struct pipe_resource *src,
uint64_t dst_offset, uint64_t src_offset, unsigned size);
+void si_compute_copy_image(struct si_context *sctx,
+ struct pipe_resource *dst,
+ unsigned dst_level,
+ struct pipe_resource *src,
+ unsigned src_level,
+ unsigned dstx, unsigned dsty, unsigned dstz,
+ const struct pipe_box *src_box);
void si_init_compute_blit_functions(struct si_context *sctx);
/* si_cp_dma.c */
@@ -1283,6 +1292,8 @@ void *si_create_fixed_func_tcs(struct si_context *sctx);
void *si_create_dma_compute_shader(struct pipe_context *ctx,
unsigned num_dwords_per_thread,
bool dst_stream_cache_policy, bool is_copy);
+void *si_create_copy_image_compute_shader(struct pipe_context *ctx);
+void *si_create_copy_image_compute_shader_1d_array(struct pipe_context *ctx);
void *si_create_query_result_cs(struct si_context *sctx);
/* si_test_dma.c */