aco: support new multadd opcodes

Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41165>
This commit is contained in:
Karol Herbst 2026-04-24 00:59:10 +02:00 committed by Marge Bot
parent 04696f9bf9
commit 3e334ea0d3
2 changed files with 4 additions and 0 deletions

View file

@ -450,6 +450,7 @@ init_context(isel_context* ctx, nir_shader* shader)
case nir_op_e4m3fn2f:
case nir_op_e5m22f:
case nir_op_fmulz:
case nir_op_ffmaz:
case nir_op_ffmaz_old:
case nir_op_f2f64:
case nir_op_u2f64:
@ -485,6 +486,7 @@ init_context(isel_context* ctx, nir_shader* shader)
case nir_op_f2f16_ru:
case nir_op_f2f16_rd: type = RegType::vgpr; break;
case nir_op_fmul:
case nir_op_ffma:
case nir_op_ffma_old:
case nir_op_fadd:
case nir_op_fsub:

View file

@ -1925,6 +1925,7 @@ visit_alu_instr(isel_context* ctx, nir_alu_instr* instr)
}
break;
}
case nir_op_ffma:
case nir_op_ffma_old: {
if (dst.regClass() == v2b) {
emit_vop3a_instruction(ctx, instr, aco_opcode::v_fma_f16, dst, false, 3);
@ -1961,6 +1962,7 @@ visit_alu_instr(isel_context* ctx, nir_alu_instr* instr)
}
break;
}
case nir_op_ffmaz:
case nir_op_ffmaz_old: {
if (dst.regClass() == v1) {
emit_vop3a_instruction(ctx, instr, aco_opcode::v_fma_legacy_f32, dst,