ac/llvm: use ds_bpermute_b32 for GFX12 wave64

It works.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35489>
This commit is contained in:
Rhys Perry
2025-06-13 17:14:57 +01:00
committed by Marge Bot
parent 9a5073e3a4
commit 01fae0c5c2
+1 -1
View File
@@ -2933,7 +2933,7 @@ static bool visit_intrinsic(struct ac_nir_context *ctx, nir_intrinsic_instr *ins
break;
}
case nir_intrinsic_shuffle:
if (ctx->ac.gfx_level == GFX8 || ctx->ac.gfx_level == GFX9 ||
if (ctx->ac.gfx_level == GFX8 || ctx->ac.gfx_level == GFX9 || ctx->ac.gfx_level == GFX12 ||
(ctx->ac.gfx_level >= GFX10 && ctx->ac.wave_size == 32)) {
result =
ac_build_shuffle(&ctx->ac, get_src(ctx, instr->src[0]), get_src(ctx, instr->src[1]));