diff options
author | Jose Fonseca <[email protected]> | 2018-05-24 16:50:58 +0100 |
---|---|---|
committer | Jose Fonseca <[email protected]> | 2018-06-04 21:06:31 +0100 |
commit | 8652ff7cdfe1d7b7aeb7974891a7c5cc7d5cc760 (patch) | |
tree | d9a1281e73a2016789652f31338de09a39c9bb51 /src/gallium | |
parent | a9a79934412abedfb8eaf74aac2dbf52604509e0 (diff) |
trace: Fix trace_context_transfer_unmap methods.
The emitted buffer_subdata/texture_subdata call didn't match the
respective signatures.
v2: Actually emit buffer_subdata call.
Reviewed-by: Roland Scheidegger <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/auxiliary/driver_trace/tr_context.c | 60 |
1 files changed, 42 insertions, 18 deletions
diff --git a/src/gallium/auxiliary/driver_trace/tr_context.c b/src/gallium/auxiliary/driver_trace/tr_context.c index 6d918d42a38..dc091aee2e9 100644 --- a/src/gallium/auxiliary/driver_trace/tr_context.c +++ b/src/gallium/auxiliary/driver_trace/tr_context.c @@ -1430,35 +1430,59 @@ trace_context_transfer_unmap(struct pipe_context *_context, */ struct pipe_resource *resource = transfer->resource; - unsigned level = transfer->level; unsigned usage = transfer->usage; const struct pipe_box *box = &transfer->box; unsigned stride = transfer->stride; unsigned layer_stride = transfer->layer_stride; - if (resource->target == PIPE_BUFFER) + if (resource->target == PIPE_BUFFER) { + unsigned offset = box->x; + unsigned size = box->width; + trace_dump_call_begin("pipe_context", "buffer_subdata"); - else + + trace_dump_arg(ptr, context); + trace_dump_arg(ptr, resource); + trace_dump_arg(uint, usage); + trace_dump_arg(uint, offset); + trace_dump_arg(uint, size); + + trace_dump_arg_begin("data"); + trace_dump_box_bytes(tr_trans->map, + resource, + box, + stride, + layer_stride); + trace_dump_arg_end(); + + trace_dump_arg(uint, stride); + trace_dump_arg(uint, layer_stride); + + trace_dump_call_end(); + } else { + unsigned level = transfer->level; + trace_dump_call_begin("pipe_context", "texture_subdata"); - trace_dump_arg(ptr, context); - trace_dump_arg(ptr, resource); - trace_dump_arg(uint, level); - trace_dump_arg(uint, usage); - trace_dump_arg(box, box); + trace_dump_arg(ptr, context); + trace_dump_arg(ptr, resource); + trace_dump_arg(uint, level); + trace_dump_arg(uint, usage); + trace_dump_arg(box, box); - trace_dump_arg_begin("data"); - trace_dump_box_bytes(tr_trans->map, - resource, - box, - stride, - layer_stride); - trace_dump_arg_end(); + trace_dump_arg_begin("data"); + trace_dump_box_bytes(tr_trans->map, + resource, + box, + stride, + layer_stride); + trace_dump_arg_end(); - trace_dump_arg(uint, stride); - trace_dump_arg(uint, layer_stride); + trace_dump_arg(uint, stride); + trace_dump_arg(uint, layer_stride); - trace_dump_call_end(); + trace_dump_call_end(); + } tr_trans->map = NULL; } |