diff options
author | Ilia Mirkin <[email protected]> | 2016-10-10 23:17:20 -0400 |
---|---|---|
committer | Ilia Mirkin <[email protected]> | 2016-10-11 20:47:54 -0400 |
commit | 389d6dedbe75defe07216ad761569a9b94f44e58 (patch) | |
tree | df612620f6fa13f34601ff2dff131a04d91ba223 | |
parent | c3f3c6b0e836e55289abaf1f3bcda58eef92764c (diff) |
trace: add invalidate_resource callback
Signed-off-by: Ilia Mirkin <[email protected]>
Reviewed-by: Edward O'Callaghan <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
-rw-r--r-- | src/gallium/drivers/trace/tr_context.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/gallium/drivers/trace/tr_context.c b/src/gallium/drivers/trace/tr_context.c index e833fb2de47..8423bb28c01 100644 --- a/src/gallium/drivers/trace/tr_context.c +++ b/src/gallium/drivers/trace/tr_context.c @@ -1635,6 +1635,26 @@ trace_context_texture_subdata(struct pipe_context *_context, data, stride, layer_stride); } +static void +trace_context_invalidate_resource(struct pipe_context *_context, + struct pipe_resource *_resource) +{ + struct trace_context *tr_context = trace_context(_context); + struct trace_resource *tr_res = trace_resource(_resource); + struct pipe_context *context = tr_context->pipe; + struct pipe_resource *resource = tr_res->resource; + + assert(resource->screen == context->screen); + + trace_dump_call_begin("pipe_context", "invalidate_resource"); + + trace_dump_arg(ptr, context); + trace_dump_arg(ptr, resource); + + trace_dump_call_end(); + + context->invalidate_resource(context, resource); +} static void trace_context_render_condition(struct pipe_context *_context, @@ -1917,6 +1937,7 @@ trace_context_create(struct trace_screen *tr_scr, TR_CTX_INIT(transfer_flush_region); TR_CTX_INIT(buffer_subdata); TR_CTX_INIT(texture_subdata); + TR_CTX_INIT(invalidate_resource); #undef TR_CTX_INIT |