v3d: Hook up some shader-db output to GL_ARB_debug_output.
This allows the original shader-db project's run.c runner to parse things easily, and is probably a good thing to have for GL_ARB_debug_output in general. I formatted it more like Intel's so I can mostly reuse their report script.
This commit is contained in:
@@ -457,6 +457,10 @@ struct v3d_compile {
|
||||
struct exec_list *cf_node_list;
|
||||
const struct v3d_compiler *compiler;
|
||||
|
||||
void (*debug_output)(const char *msg,
|
||||
void *debug_output_data);
|
||||
void *debug_output_data;
|
||||
|
||||
/**
|
||||
* Mapping from nir_register * or nir_ssa_def * to array of struct
|
||||
* qreg for the values.
|
||||
@@ -529,8 +533,8 @@ struct v3d_compile {
|
||||
* space needs to be available in the spill BO per thread per QPU.
|
||||
*/
|
||||
uint32_t spill_size;
|
||||
/* Shader-db stats for register spilling. */
|
||||
uint32_t spills, fills;
|
||||
/* Shader-db stats */
|
||||
uint32_t spills, fills, loops;
|
||||
/**
|
||||
* Register spilling's per-thread base address, shared between each
|
||||
* spill/fill's addressing calculations.
|
||||
@@ -706,6 +710,9 @@ uint64_t *v3d_compile_vs(const struct v3d_compiler *compiler,
|
||||
struct v3d_vs_key *key,
|
||||
struct v3d_vs_prog_data *prog_data,
|
||||
nir_shader *s,
|
||||
void (*debug_output)(const char *msg,
|
||||
void *debug_output_data),
|
||||
void *debug_output_data,
|
||||
int program_id, int variant_id,
|
||||
uint32_t *final_assembly_size);
|
||||
|
||||
@@ -713,6 +720,9 @@ uint64_t *v3d_compile_fs(const struct v3d_compiler *compiler,
|
||||
struct v3d_fs_key *key,
|
||||
struct v3d_fs_prog_data *prog_data,
|
||||
nir_shader *s,
|
||||
void (*debug_output)(const char *msg,
|
||||
void *debug_output_data),
|
||||
void *debug_output_data,
|
||||
int program_id, int variant_id,
|
||||
uint32_t *final_assembly_size);
|
||||
|
||||
|
Reference in New Issue
Block a user