summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_shader.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2018-11-12 21:29:27 -0500
committerMarek Olšák <[email protected]>2019-01-02 15:01:53 -0500
commit9d2c3a1fe070b7e6623170b3a9673d1311a49461 (patch)
tree5d0a65e257cef72569e7c9ee5db2c3ae9dc63ed1 /src/gallium/drivers/radeonsi/si_shader.c
parentd28e20821349f6ba0172904d8c54e16d734de8d6 (diff)
radeonsi: call si_fix_resource_usage for the GS copy shader as well
Tested-by: Dieter Nützel <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_shader.c')
-rw-r--r--src/gallium/drivers/radeonsi/si_shader.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 190edce2497..35fee58a9aa 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -86,6 +86,8 @@ static void si_build_ps_prolog_function(struct si_shader_context *ctx,
union si_shader_part_key *key);
static void si_build_ps_epilog_function(struct si_shader_context *ctx,
union si_shader_part_key *key);
+static void si_fix_resource_usage(struct si_screen *sscreen,
+ struct si_shader *shader);
/* Ideally pass the sample mask input to the PS epilog as v14, which
* is its usual location, so that the shader doesn't have to add v_mov.
@@ -5783,6 +5785,8 @@ si_generate_gs_copy_shader(struct si_screen *sscreen,
if (r != 0) {
FREE(shader);
shader = NULL;
+ } else {
+ si_fix_resource_usage(sscreen, shader);
}
return shader;
}