blob: f01e8cc84290316d55b837e5d65b1f268037a8cf [file] [log] [blame]
#include <stddef.h>
#include "compiler/shader_enums.h"
struct midgard_disasm_stats {
/* Counts gleaned from disassembly, or negative if the field cannot be
* inferred, for instance due to indirect access. If negative, the abs
* is the upper limit for the count. */
signed texture_count;
signed sampler_count;
signed attribute_count;
signed varying_count;
signed uniform_count;
signed uniform_buffer_count;
signed work_count;
/* These are pseudometrics for shader-db */
unsigned instruction_count;
unsigned bundle_count;
unsigned quadword_count;
/* Should we enable helper invocations? */
bool helper_invocations;
};
struct midgard_disasm_stats
disassemble_midgard(FILE *fp, uint8_t *code, size_t size, unsigned gpu_id, gl_shader_stage stage);