summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2017-04-27 19:01:44 +0200
committerMarek Olšák <[email protected]>2017-05-05 00:23:44 +0200
commit1b01014cbfa1d343a3b84cabfd4759bcc8520ea6 (patch)
tree1ff881237bdb8e28fc5553beef8a7d4fa543a213 /src/gallium
parente107c5a426dfe38fc17db9915b207b11e107fb52 (diff)
radeonsi/gfx9: also apply scratch relocations to the 1st shader of merged shaders
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/radeonsi/si_state_shaders.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c
index 7191e4100a1..3a9a6f7fcf9 100644
--- a/src/gallium/drivers/radeonsi/si_state_shaders.c
+++ b/src/gallium/drivers/radeonsi/si_state_shaders.c
@@ -2611,6 +2611,9 @@ static int si_update_scratch_buffer(struct si_context *sctx,
assert(sctx->scratch_buffer);
+ if (shader->previous_stage)
+ si_shader_apply_scratch_relocs(shader->previous_stage, scratch_va);
+
si_shader_apply_scratch_relocs(shader, scratch_va);
/* Replace the shader bo with a new bo that has the relocs applied. */