[Mesa-dev] [PATCH 10/20] radeonsi: don't pass scratch buffer to user SGPRs

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Sat Apr 2 13:10:53 UTC 2016


As far as I can see we use relocations for clover too.

Signed-off-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
---
 src/gallium/drivers/radeonsi/si_compute.c | 8 --------
 1 file changed, 8 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_compute.c b/src/gallium/drivers/radeonsi/si_compute.c
index 3702e80..9c25335 100644
--- a/src/gallium/drivers/radeonsi/si_compute.c
+++ b/src/gallium/drivers/radeonsi/si_compute.c
@@ -284,7 +284,6 @@ static void si_launch_grid(
 	struct radeon_winsys_cs *cs = sctx->b.gfx.cs;
 	struct si_compute *program = sctx->cs_shader_state.program;
 	struct si_pm4_state *pm4 = CALLOC_STRUCT(si_pm4_state);
-	uint64_t scratch_buffer_va = 0;
 	uint64_t shader_va;
 	unsigned i;
 	struct si_shader *shader = &program->shader;
@@ -326,15 +325,8 @@ static void si_launch_grid(
 					  shader->scratch_bo,
 					  RADEON_USAGE_READWRITE,
 					  RADEON_PRIO_SCRATCH_BUFFER);
-
-		scratch_buffer_va = shader->scratch_bo->gpu_address;
 	}
 
-	si_pm4_set_reg(pm4, R_00B900_COMPUTE_USER_DATA_0 + 8, scratch_buffer_va);
-	si_pm4_set_reg(pm4, R_00B900_COMPUTE_USER_DATA_0 + 12,
-		S_008F04_BASE_ADDRESS_HI(scratch_buffer_va >> 32)
-		|  S_008F04_STRIDE(shader->config.scratch_bytes_per_wave / 64));
-
 	si_pm4_set_reg(pm4, R_00B810_COMPUTE_START_X, 0);
 	si_pm4_set_reg(pm4, R_00B814_COMPUTE_START_Y, 0);
 	si_pm4_set_reg(pm4, R_00B818_COMPUTE_START_Z, 0);
-- 
2.7.4



More information about the mesa-dev mailing list