aco: prepare fix_ls_vgpr_init_bug to be used by gl vs prolog

Prolog does not have nir shader.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24712>
This commit is contained in:
Qiang Yu
2023-08-04 20:14:30 +08:00
committed by Marge Bot
parent eb4f871034
commit 3f87413811

View File

@@ -11127,9 +11127,8 @@ add_startpgm(struct isel_context* ctx)
}
void
fix_ls_vgpr_init_bug(isel_context* ctx, Pseudo_instruction* startpgm)
fix_ls_vgpr_init_bug(isel_context* ctx)
{
assert(ctx->shader->info.stage == MESA_SHADER_VERTEX);
Builder bld(ctx->program, ctx->block);
constexpr unsigned hs_idx = 1u;
Builder::Result hs_thread_count =
@@ -11491,7 +11490,7 @@ select_shader(isel_context& ctx, nir_shader* nir, const bool need_startpgm, cons
append_logical_start(ctx.block);
if (unlikely(ctx.options->has_ls_vgpr_init_bug && ctx.stage == vertex_tess_control_hs))
fix_ls_vgpr_init_bug(&ctx, startpgm);
fix_ls_vgpr_init_bug(&ctx);
split_arguments(&ctx, startpgm);