tgsi: helper for dumping tokens as hex
This commit is contained in:
@@ -282,17 +282,6 @@ tgsi_parse_token(
|
||||
}
|
||||
|
||||
|
||||
unsigned
|
||||
tgsi_num_tokens(const struct tgsi_token *tokens)
|
||||
{
|
||||
struct tgsi_parse_context ctx;
|
||||
if (tgsi_parse_init(&ctx, tokens) == TGSI_PARSE_OK) {
|
||||
unsigned len = (ctx.FullHeader.Header.HeaderSize +
|
||||
ctx.FullHeader.Header.BodySize);
|
||||
return len;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
@@ -319,3 +308,19 @@ tgsi_alloc_tokens(unsigned num_tokens)
|
||||
unsigned bytes = num_tokens * sizeof(struct tgsi_token);
|
||||
return (struct tgsi_token *) MALLOC(bytes);
|
||||
}
|
||||
|
||||
|
||||
void
|
||||
tgsi_dump_tokens(const struct tgsi_token *tokens)
|
||||
{
|
||||
const unsigned *dwords = (const unsigned *)tokens;
|
||||
int nr = tgsi_num_tokens(tokens);
|
||||
int i;
|
||||
|
||||
assert(sizeof(*tokens) == sizeof(unsigned));
|
||||
|
||||
debug_printf("const unsigned tokens[%d] = {\n", nr);
|
||||
for (i = 0; i < nr; i++)
|
||||
debug_printf("0x%08x,\n", dwords[i]);
|
||||
debug_printf("};\n");
|
||||
}
|
||||
|
||||
@@ -132,8 +132,15 @@ void
|
||||
tgsi_parse_token(
|
||||
struct tgsi_parse_context *ctx );
|
||||
|
||||
unsigned
|
||||
tgsi_num_tokens(const struct tgsi_token *tokens);
|
||||
static INLINE unsigned
|
||||
tgsi_num_tokens(const struct tgsi_token *tokens)
|
||||
{
|
||||
struct tgsi_header header = *(const struct tgsi_header *) tokens;
|
||||
return header.HeaderSize + header.BodySize;
|
||||
}
|
||||
|
||||
void
|
||||
tgsi_dump_tokens(const struct tgsi_token *tokens);
|
||||
|
||||
struct tgsi_token *
|
||||
tgsi_dup_tokens(const struct tgsi_token *tokens);
|
||||
|
||||
Reference in New Issue
Block a user