This is not because the vertex stage needs some push constants
that other stages need them too. This should reduce the number
of loaded SGPRs in some situations.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
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;