summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeon/r600_pipe_common.h
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2016-07-16 21:52:20 +0200
committerMarek Olšák <marek.olsak@amd.com>2016-07-23 13:33:42 +0200
commit700de07771a1b6ce2a63b063fcc196c5b26cffe3 (patch)
tree78705e4c2d767c33c1d978dcd69ae518248f584b /src/gallium/drivers/radeon/r600_pipe_common.h
parent8e3e9d283976c30a8ba9b51821bc61ddf782e2b0 (diff)
downloadexternal_mesa3d-700de07771a1b6ce2a63b063fcc196c5b26cffe3.zip
external_mesa3d-700de07771a1b6ce2a63b063fcc196c5b26cffe3.tar.gz
external_mesa3d-700de07771a1b6ce2a63b063fcc196c5b26cffe3.tar.bz2
radeonsi: implement buffer_subdata without indirect calls
There is less noise in CPU profile data now. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Diffstat (limited to 'src/gallium/drivers/radeon/r600_pipe_common.h')
-rw-r--r--src/gallium/drivers/radeon/r600_pipe_common.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.h b/src/gallium/drivers/radeon/r600_pipe_common.h
index d8736c6..7851a86 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.h
+++ b/src/gallium/drivers/radeon/r600_pipe_common.h
@@ -644,6 +644,10 @@ bool r600_rings_is_buffer_referenced(struct r600_common_context *ctx,
void *r600_buffer_map_sync_with_rings(struct r600_common_context *ctx,
struct r600_resource *resource,
unsigned usage);
+void r600_buffer_subdata(struct pipe_context *ctx,
+ struct pipe_resource *buffer,
+ unsigned usage, unsigned offset,
+ unsigned size, const void *data);
bool r600_init_resource(struct r600_common_screen *rscreen,
struct r600_resource *res,
uint64_t size, unsigned alignment);
@@ -674,7 +678,8 @@ void r600_destroy_common_screen(struct r600_common_screen *rscreen);
void r600_preflush_suspend_features(struct r600_common_context *ctx);
void r600_postflush_resume_features(struct r600_common_context *ctx);
bool r600_common_context_init(struct r600_common_context *rctx,
- struct r600_common_screen *rscreen);
+ struct r600_common_screen *rscreen,
+ unsigned context_flags);
void r600_common_context_cleanup(struct r600_common_context *rctx);
void r600_context_add_resource_size(struct pipe_context *ctx, struct pipe_resource *r);
bool r600_can_dump_shader(struct r600_common_screen *rscreen,