mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 04:10:09 +01:00
panfrost/decode: Disassemble Bifrost shaders
We already have the Bifrost disassembler in-tree, so now that panwrap is able to dump Bifrost command streams, hook up the disassembler to pandecode. Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Ryan Houdek <Sonicadvance1@gmail.com>
This commit is contained in:
parent
4689e98fe8
commit
50382df728
2 changed files with 10 additions and 8 deletions
|
|
@ -151,7 +151,8 @@ files_pandecode = files(
|
|||
|
||||
'pan_pretty_print.c',
|
||||
|
||||
'midgard/disassemble.c'
|
||||
'midgard/disassemble.c',
|
||||
'bifrost/disassemble.c',
|
||||
)
|
||||
|
||||
pandecode = executable(
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@
|
|||
|
||||
#include "../pan_pretty_print.h"
|
||||
#include "../midgard/disassemble.h"
|
||||
#include "../bifrost/disassemble.h"
|
||||
int pandecode_replay_jc(mali_ptr jc_gpu_va, bool bifrost);
|
||||
|
||||
#define MEMORY_PROP(obj, p) {\
|
||||
|
|
@ -1155,17 +1156,17 @@ pandecode_shader_disassemble(mali_ptr shader_ptr, int shader_no, int type,
|
|||
/* Compute maximum possible size */
|
||||
size_t sz = mem->length - (shader_ptr - mem->gpu_va);
|
||||
|
||||
/* TODO: When Bifrost is upstreamed, disassemble that too */
|
||||
if (is_bifrost) {
|
||||
pandecode_msg("Bifrost disassembler not yet upstreamed");
|
||||
return;
|
||||
}
|
||||
|
||||
/* Print some boilerplate to clearly denote the assembly (which doesn't
|
||||
* obey indentation rules), and actually do the disassembly! */
|
||||
|
||||
printf("\n\n");
|
||||
disassemble_midgard(code, sz);
|
||||
|
||||
if (is_bifrost) {
|
||||
disassemble_bifrost(code, sz, false);
|
||||
} else {
|
||||
disassemble_midgard(code, sz);
|
||||
}
|
||||
|
||||
printf("\n\n");
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue