summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2016-01-03 17:18:04 +0100
committerMarek Olšák <marek.olsak@amd.com>2016-01-07 18:26:06 +0100
commit0a51b010e5a250bd533c95447f6f2d8132345e67 (patch)
tree7657c40d2fc63cdd85bd9885ccc27f606262b958
parentb0df5f4c19f2c084fe65b13f5712433c91ad83d0 (diff)
downloadexternal_mesa3d-0a51b010e5a250bd533c95447f6f2d8132345e67.zip
external_mesa3d-0a51b010e5a250bd533c95447f6f2d8132345e67.tar.gz
external_mesa3d-0a51b010e5a250bd533c95447f6f2d8132345e67.tar.bz2
radeonsi: move si_shader_dump call out of si_compile_llvm
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
-rw-r--r--src/gallium/drivers/radeonsi/si_compute.c3
-rw-r--r--src/gallium/drivers/radeonsi/si_shader.c10
2 files changed, 11 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_compute.c b/src/gallium/drivers/radeonsi/si_compute.c
index 2380242..ffac656 100644
--- a/src/gallium/drivers/radeonsi/si_compute.c
+++ b/src/gallium/drivers/radeonsi/si_compute.c
@@ -125,6 +125,9 @@ static void *si_create_compute_state(
si_compile_llvm(sctx->screen, &program->kernels[i].binary,
&program->kernels[i].config, sctx->tm,
mod, &sctx->b.debug, TGSI_PROCESSOR_COMPUTE);
+ si_shader_dump(sctx->screen, &program->kernels[i].binary,
+ &program->kernels[i].config,
+ &sctx->b.debug, TGSI_PROCESSOR_COMPUTE);
si_shader_binary_upload(sctx->screen, &program->kernels[i]);
LLVMDisposeModule(mod);
}
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 36b0364..500dd2b 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -3912,7 +3912,6 @@ int si_compile_llvm(struct si_screen *sscreen,
}
si_shader_binary_read_config(binary, conf, 0);
- si_shader_dump(sscreen, binary, conf, debug, processor);
FREE(binary->config);
FREE(binary->global_symbol_offsets);
@@ -3995,8 +3994,12 @@ static int si_generate_gs_copy_shader(struct si_screen *sscreen,
&si_shader_ctx->shader->config, si_shader_ctx->tm,
bld_base->base.gallivm->module,
debug, TGSI_PROCESSOR_GEOMETRY);
- if (!r)
+ if (!r) {
+ si_shader_dump(sscreen, &si_shader_ctx->shader->binary,
+ &si_shader_ctx->shader->config, debug,
+ TGSI_PROCESSOR_GEOMETRY);
r = si_shader_binary_upload(sscreen, si_shader_ctx->shader);
+ }
radeon_llvm_dispose(&si_shader_ctx->radeon_bld);
@@ -4198,6 +4201,9 @@ int si_shader_create(struct si_screen *sscreen, LLVMTargetMachineRef tm,
goto out;
}
+ si_shader_dump(sscreen, &shader->binary, &shader->config,
+ debug, si_shader_ctx.type);
+
r = si_shader_binary_upload(sscreen, shader);
if (r) {
fprintf(stderr, "LLVM failed to upload shader\n");