radeonsi/gfx12: set DIS_PG_SIZE_ADJUST_FOR_STRIP after shader compilation

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32957>
This commit is contained in:
Marek Olšák
2025-01-08 15:11:23 -05:00
parent 4cfa4e9dd7
commit b05fa7d575
2 changed files with 2 additions and 4 deletions

View File

@@ -213,9 +213,6 @@ static bool si_update_shaders(struct si_context *sctx)
} else {
ge_cntl = si_get_vs_inline(sctx, HAS_TESS, HAS_GS)->current->ge_cntl;
}
if (GFX_VERSION >= GFX12)
ge_cntl |= S_03096C_DIS_PG_SIZE_ADJUST_FOR_STRIP(1);
} else {
unsigned primgroup_size;
unsigned vertgroup_size;

View File

@@ -1701,7 +1701,8 @@ static void gfx10_shader_ngg(struct si_screen *sscreen, struct si_shader *shader
shader->ge_cntl = S_03096C_PRIMS_PER_SUBGRP(shader->ngg.max_gsprims) |
S_03096C_VERTS_PER_SUBGRP(shader->ngg.hw_max_esverts) |
S_03096C_PRIM_GRP_SIZE_GFX11(
CLAMP(max_prim_grp_size / MAX2(prim_amp_factor, 1), 1, 256));
CLAMP(max_prim_grp_size / MAX2(prim_amp_factor, 1), 1, 256)) |
S_03096C_DIS_PG_SIZE_ADJUST_FOR_STRIP(sscreen->info.gfx_level >= GFX12);
} else {
shader->ge_cntl = S_03096C_PRIM_GRP_SIZE_GFX10(shader->ngg.max_gsprims) |
S_03096C_VERT_GRP_SIZE(shader->ngg.hw_max_esverts);