pan/bi: Allow toggling disassembly verbosity

Verbose mode is especially useful for debugging packing, but otherwise
just gets in the way I find.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8139>
This commit is contained in:
Alyssa Rosenzweig 2020-12-16 15:02:26 -05:00 committed by Marge Bot
parent 5ad54d498c
commit 3071f36cfb
2 changed files with 7 additions and 2 deletions

View file

@ -32,6 +32,7 @@
#define BIFROST_DBG_MSGS 0x0001
#define BIFROST_DBG_SHADERS 0x0002
#define BIFROST_DBG_SHADERDB 0x0004
#define BIFROST_DBG_VERBOSE 0x0008
extern int bifrost_debug;

View file

@ -41,6 +41,7 @@ static const struct debug_named_value debug_options[] = {
{"msgs", BIFROST_DBG_MSGS, "Print debug messages"},
{"shaders", BIFROST_DBG_SHADERS, "Dump shaders in NIR and MIR"},
{"shaderdb", BIFROST_DBG_SHADERDB, "Print statistics"},
{"verbose", BIFROST_DBG_VERBOSE, "Disassemble verbosely"},
DEBUG_NAMED_VALUE_END
};
@ -2599,8 +2600,11 @@ bifrost_compile_shader_nir(void *mem_ctx, nir_shader *nir,
memcpy(program->blend_ret_offsets, ctx->blend_ret_offsets, sizeof(program->blend_ret_offsets));
if (bifrost_debug & BIFROST_DBG_SHADERS && !nir->info.internal)
disassemble_bifrost(stdout, program->compiled.data, program->compiled.size, true);
if (bifrost_debug & BIFROST_DBG_SHADERS && !nir->info.internal) {
disassemble_bifrost(stdout, program->compiled.data,
program->compiled.size,
bifrost_debug & BIFROST_DBG_VERBOSE);
}
program->tls_size = ctx->tls_size;