summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Stellard <[email protected]>2015-01-23 22:54:43 +0000
committerTom Stellard <[email protected]>2015-01-28 21:03:46 +0000
commit32206c5e560cea8c992ec983e7f5324493385ead (patch)
treec7c41bcfb5a79cd998f14a240a3cd825ddf9735c
parent37559f8dfcaa9bcbfff2d9fa0a0bd2fe4564e635 (diff)
radeonsi: Add radeon_shader_binary member to struct si_shader
Reviewed-by: Michel Dänzer <[email protected]>
-rw-r--r--src/gallium/drivers/radeonsi/si_compute.c11
-rw-r--r--src/gallium/drivers/radeonsi/si_shader.h1
2 files changed, 6 insertions, 6 deletions
diff --git a/src/gallium/drivers/radeonsi/si_compute.c b/src/gallium/drivers/radeonsi/si_compute.c
index ba63afdd480..840d21fd850 100644
--- a/src/gallium/drivers/radeonsi/si_compute.c
+++ b/src/gallium/drivers/radeonsi/si_compute.c
@@ -54,7 +54,6 @@ struct si_compute {
unsigned local_size;
unsigned private_size;
unsigned input_size;
- struct radeon_shader_binary binary;
struct si_shader shader;
unsigned num_user_sgprs;
@@ -102,8 +101,8 @@ static void *si_create_compute_state(
}
#else
- radeon_elf_read(code, header->num_bytes, &program->binary, true);
- si_shader_binary_read(sctx->screen, &program->shader, &program->binary);
+ radeon_elf_read(code, header->num_bytes, &program->shader.binary, true);
+ si_shader_binary_read(sctx->screen, &program->shader, &program->shader.binary);
#endif
program->input_buffer = si_resource_create_custom(sctx->b.b.screen,
@@ -256,7 +255,7 @@ static void si_launch_grid(
#if HAVE_LLVM >= 0x0306
/* Read the config information */
- si_shader_binary_read_config(&program->binary, shader, pc);
+ si_shader_binary_read_config(&program->shader.binary, shader, pc);
#endif
/* Upload the kernel arguments */
@@ -296,7 +295,7 @@ static void si_launch_grid(
/* Patch the shader with the scratch buffer address. */
apply_scratch_relocs(sctx->screen,
- &program->binary, shader, scratch_buffer_va);
+ &program->shader.binary, shader, scratch_buffer_va);
}
@@ -481,7 +480,7 @@ static void si_delete_compute_state(struct pipe_context *ctx, void* state){
pipe_resource_reference(
(struct pipe_resource **)&program->input_buffer, NULL);
- radeon_shader_binary_free_members(&program->binary, true);
+ radeon_shader_binary_free_members(&program->shader.binary, true);
FREE(program);
}
diff --git a/src/gallium/drivers/radeonsi/si_shader.h b/src/gallium/drivers/radeonsi/si_shader.h
index 08e344af444..6def5c71313 100644
--- a/src/gallium/drivers/radeonsi/si_shader.h
+++ b/src/gallium/drivers/radeonsi/si_shader.h
@@ -142,6 +142,7 @@ struct si_shader {
struct si_pm4_state *pm4;
struct r600_resource *bo;
struct r600_resource *scratch_bo;
+ struct radeon_shader_binary binary;
unsigned num_sgprs;
unsigned num_vgprs;
unsigned lds_size;