mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-29 03:40:10 +01:00
aco: Pass debug information to the driver
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29298>
This commit is contained in:
parent
f8ef1afec8
commit
69ebba82d4
4 changed files with 10 additions and 5 deletions
|
|
@ -300,7 +300,8 @@ aco_compile_shader(const struct aco_compiler_options* options, const struct aco_
|
|||
|
||||
(*build_binary)(binary, &config, llvm_ir.c_str(), llvm_ir.size(), disasm.c_str(), disasm.size(),
|
||||
program->statistics, stats_size, exec_size, code.data(), code.size(),
|
||||
symbols.data(), symbols.size());
|
||||
symbols.data(), symbols.size(), program->debug_info.data(),
|
||||
program->debug_info.size());
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -344,7 +345,7 @@ aco_compile_rt_prolog(const struct aco_compiler_options* options,
|
|||
disasm = get_disasm_string(program.get(), code, exec_size);
|
||||
|
||||
(*build_prolog)(binary, &config, NULL, 0, disasm.c_str(), disasm.size(), program->statistics, 0,
|
||||
exec_size, code.data(), code.size(), NULL, 0);
|
||||
exec_size, code.data(), code.size(), NULL, 0, NULL, 0);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
#define ACO_INTERFACE_H
|
||||
|
||||
#include "aco_shader_info.h"
|
||||
#include "ac_shader_debug_info.h"
|
||||
|
||||
#include "nir.h"
|
||||
|
||||
|
|
@ -34,7 +35,8 @@ typedef void(aco_callback)(void** priv_ptr, const struct ac_shader_config* confi
|
|||
const char* llvm_ir_str, unsigned llvm_ir_size, const char* disasm_str,
|
||||
unsigned disasm_size, uint32_t* statistics, uint32_t stats_size,
|
||||
uint32_t exec_size, const uint32_t* code, uint32_t code_dw,
|
||||
const struct aco_symbol* symbols, unsigned num_symbols);
|
||||
const struct aco_symbol* symbols, unsigned num_symbols,
|
||||
const struct ac_shader_debug_info* debug_info, unsigned debug_info_count);
|
||||
|
||||
typedef void(aco_shader_part_callback)(void** priv_ptr, uint32_t num_sgprs, uint32_t num_vgprs,
|
||||
const uint32_t* code, uint32_t code_size,
|
||||
|
|
|
|||
|
|
@ -2841,7 +2841,8 @@ static void
|
|||
radv_aco_build_shader_binary(void **bin, const struct ac_shader_config *config, const char *llvm_ir_str,
|
||||
unsigned llvm_ir_size, const char *disasm_str, unsigned disasm_size, uint32_t *statistics,
|
||||
uint32_t stats_size, uint32_t exec_size, const uint32_t *code, uint32_t code_dw,
|
||||
const struct aco_symbol *symbols, unsigned num_symbols)
|
||||
const struct aco_symbol *symbols, unsigned num_symbols,
|
||||
const struct ac_shader_debug_info *debug_info, unsigned debug_info_count)
|
||||
{
|
||||
struct radv_shader_binary **binary = (struct radv_shader_binary **)bin;
|
||||
size_t size = llvm_ir_size;
|
||||
|
|
|
|||
|
|
@ -113,7 +113,8 @@ si_aco_build_shader_binary(void **data, const struct ac_shader_config *config,
|
|||
const char *llvm_ir_str, unsigned llvm_ir_size, const char *disasm_str,
|
||||
unsigned disasm_size, uint32_t *statistics, uint32_t stats_size,
|
||||
uint32_t exec_size, const uint32_t *code, uint32_t code_dw,
|
||||
const struct aco_symbol *symbols, unsigned num_symbols)
|
||||
const struct aco_symbol *symbols, unsigned num_symbols,
|
||||
const struct ac_shader_debug_info *debug_info, unsigned debug_info_count)
|
||||
{
|
||||
struct si_shader *shader = (struct si_shader *)data;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue