aco/isel: emit vop2 v_lshlrev_b64 for gfx12+

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38156>
This commit is contained in:
Georg Lehmann 2025-10-30 09:32:38 +01:00 committed by Marge Bot
parent 7ac67e2711
commit 0f54136730

View file

@ -1128,6 +1128,8 @@ visit_alu_instr(isel_context* ctx, nir_alu_instr* instr)
} else if (dst.regClass() == v1) {
emit_vop2_instruction(ctx, instr, aco_opcode::v_lshlrev_b32, dst, false, true, false,
false, 1);
} else if (dst.regClass() == v2 && ctx->program->gfx_level >= GFX12) {
emit_vop2_instruction(ctx, instr, aco_opcode::v_lshlrev_b64, dst, false, true);
} else if (dst.regClass() == v2 && ctx->program->gfx_level >= GFX8) {
bld.vop3(aco_opcode::v_lshlrev_b64_e64, Definition(dst), get_alu_src(ctx, instr->src[1]),
get_alu_src(ctx, instr->src[0]));