summaryrefslogtreecommitdiffstats
path: root/src/intel/common/gen_decoder.h
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2018-05-01 21:49:17 -0700
committerKenneth Graunke <[email protected]>2018-05-02 09:27:56 -0700
commitbf91b81a0bfc549b861d17caa42eb3ce98db49b5 (patch)
tree08563f0de0a961ca81cb4393f2e2fbf56a979938 /src/intel/common/gen_decoder.h
parent7c22c150c40b3e2da892604d21c749aaec0b3cfd (diff)
intel: Give the batch decoder a callback to ask about state size.
Given an arbitrary batch, we don't always know what the size of certain things are, such as how many entries are in a binding table. But it's easy for the driver to track that information, so with a simple callback we can calculate this correctly for INTEL_DEBUG=bat. Reviewed-by: Lionel Landwerlin <[email protected]>
Diffstat (limited to 'src/intel/common/gen_decoder.h')
-rw-r--r--src/intel/common/gen_decoder.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/intel/common/gen_decoder.h b/src/intel/common/gen_decoder.h
index 8324ff95696..37f6c3ee989 100644
--- a/src/intel/common/gen_decoder.h
+++ b/src/intel/common/gen_decoder.h
@@ -207,6 +207,8 @@ struct gen_disasm *disasm;
struct gen_batch_decode_ctx {
struct gen_batch_decode_bo (*get_bo)(void *user_data,
uint64_t base_address);
+ unsigned (*get_state_size)(void *user_data,
+ uint32_t offset_from_dynamic_state_base_addr);
void *user_data;
FILE *fp;
@@ -226,6 +228,8 @@ void gen_batch_decode_ctx_init(struct gen_batch_decode_ctx *ctx,
const char *xml_path,
struct gen_batch_decode_bo (*get_bo)(void *,
uint64_t),
+
+ unsigned (*get_state_size)(void *, uint32_t),
void *user_data);
void gen_batch_decode_ctx_finish(struct gen_batch_decode_ctx *ctx);