radeonsi: adjust the parameters of si_shader_dump

The function will be extended to dump all binaries shaders will consist of,
so si_shader* makes sense here.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
Marek Olšák
2016-01-06 02:30:13 +01:00
parent 0a51b010e5
commit bca18057a3
3 changed files with 11 additions and 20 deletions

View File

@@ -125,8 +125,7 @@ static void *si_create_compute_state(
si_compile_llvm(sctx->screen, &program->kernels[i].binary, si_compile_llvm(sctx->screen, &program->kernels[i].binary,
&program->kernels[i].config, sctx->tm, &program->kernels[i].config, sctx->tm,
mod, &sctx->b.debug, TGSI_PROCESSOR_COMPUTE); mod, &sctx->b.debug, TGSI_PROCESSOR_COMPUTE);
si_shader_dump(sctx->screen, &program->kernels[i].binary, si_shader_dump(sctx->screen, &program->kernels[i],
&program->kernels[i].config,
&sctx->b.debug, TGSI_PROCESSOR_COMPUTE); &sctx->b.debug, TGSI_PROCESSOR_COMPUTE);
si_shader_binary_upload(sctx->screen, &program->kernels[i]); si_shader_binary_upload(sctx->screen, &program->kernels[i]);
LLVMDisposeModule(mod); LLVMDisposeModule(mod);
@@ -143,8 +142,7 @@ static void *si_create_compute_state(
init_scratch_buffer(sctx, program); init_scratch_buffer(sctx, program);
si_shader_binary_read_config(&program->shader.binary, si_shader_binary_read_config(&program->shader.binary,
&program->shader.config, 0); &program->shader.config, 0);
si_shader_dump(sctx->screen, &program->shader.binary, si_shader_dump(sctx->screen, &program->shader, &sctx->b.debug,
&program->shader.config, &sctx->b.debug,
TGSI_PROCESSOR_COMPUTE); TGSI_PROCESSOR_COMPUTE);
si_shader_binary_upload(sctx->screen, &program->shader); si_shader_binary_upload(sctx->screen, &program->shader);

View File

@@ -3872,17 +3872,15 @@ static void si_shader_dump_stats(struct si_screen *sscreen,
conf->lds_size, conf->scratch_bytes_per_wave); conf->lds_size, conf->scratch_bytes_per_wave);
} }
void si_shader_dump(struct si_screen *sscreen, void si_shader_dump(struct si_screen *sscreen, struct si_shader *shader,
struct radeon_shader_binary *binary, struct pipe_debug_callback *debug, unsigned processor)
struct si_shader_config *conf,
struct pipe_debug_callback *debug,
unsigned processor)
{ {
if (r600_can_dump_shader(&sscreen->b, processor)) if (r600_can_dump_shader(&sscreen->b, processor))
if (!(sscreen->b.debug_flags & DBG_NO_ASM)) if (!(sscreen->b.debug_flags & DBG_NO_ASM))
si_shader_dump_disassembly(binary, debug); si_shader_dump_disassembly(&shader->binary, debug);
si_shader_dump_stats(sscreen, conf, binary->code_size, debug, processor); si_shader_dump_stats(sscreen, &shader->config,
shader->binary.code_size, debug, processor);
} }
int si_compile_llvm(struct si_screen *sscreen, int si_compile_llvm(struct si_screen *sscreen,
@@ -3995,8 +3993,7 @@ static int si_generate_gs_copy_shader(struct si_screen *sscreen,
bld_base->base.gallivm->module, bld_base->base.gallivm->module,
debug, TGSI_PROCESSOR_GEOMETRY); debug, TGSI_PROCESSOR_GEOMETRY);
if (!r) { if (!r) {
si_shader_dump(sscreen, &si_shader_ctx->shader->binary, si_shader_dump(sscreen, si_shader_ctx->shader, debug,
&si_shader_ctx->shader->config, debug,
TGSI_PROCESSOR_GEOMETRY); TGSI_PROCESSOR_GEOMETRY);
r = si_shader_binary_upload(sscreen, si_shader_ctx->shader); r = si_shader_binary_upload(sscreen, si_shader_ctx->shader);
} }
@@ -4201,8 +4198,7 @@ int si_shader_create(struct si_screen *sscreen, LLVMTargetMachineRef tm,
goto out; goto out;
} }
si_shader_dump(sscreen, &shader->binary, &shader->config, si_shader_dump(sscreen, shader, debug, si_shader_ctx.type);
debug, si_shader_ctx.type);
r = si_shader_binary_upload(sscreen, shader); r = si_shader_binary_upload(sscreen, shader);
if (r) { if (r) {

View File

@@ -344,11 +344,8 @@ void si_shader_destroy(struct si_shader *shader);
void si_shader_destroy_binary(struct radeon_shader_binary *binary); void si_shader_destroy_binary(struct radeon_shader_binary *binary);
unsigned si_shader_io_get_unique_index(unsigned semantic_name, unsigned index); unsigned si_shader_io_get_unique_index(unsigned semantic_name, unsigned index);
int si_shader_binary_upload(struct si_screen *sscreen, struct si_shader *shader); int si_shader_binary_upload(struct si_screen *sscreen, struct si_shader *shader);
void si_shader_dump(struct si_screen *sscreen, void si_shader_dump(struct si_screen *sscreen, struct si_shader *shader,
struct radeon_shader_binary *binary, struct pipe_debug_callback *debug, unsigned processor);
struct si_shader_config *conf,
struct pipe_debug_callback *debug,
unsigned processor);
void si_shader_apply_scratch_relocs(struct si_context *sctx, void si_shader_apply_scratch_relocs(struct si_context *sctx,
struct si_shader *shader, struct si_shader *shader,
uint64_t scratch_va); uint64_t scratch_va);