summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/amd/common/ac_shader_info.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/amd/common/ac_shader_info.c b/src/amd/common/ac_shader_info.c
index 6aadb5032e2..ab5388fb53f 100644
--- a/src/amd/common/ac_shader_info.c
+++ b/src/amd/common/ac_shader_info.c
@@ -149,7 +149,8 @@ ac_nir_shader_info_pass(struct nir_shader *nir,
struct nir_function *func = (struct nir_function *)exec_list_get_head(&nir->functions);
info->needs_push_constants = false;
- if (options->layout->push_constant_size ||
+ if ((options->layout->push_constant_size &&
+ options->layout->push_constant_stages & (1 << nir->info.stage)) ||
options->layout->dynamic_offset_count)
info->needs_push_constants = true;