From: Daniel Schürmann Date: Mon, 20 Apr 2020 11:59:21 +0000 (+0100) Subject: aco: fix 64bit fsub X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=be0bb7e1015ee0c5930b2aabd3e3de7c790be5e0;p=mesa.git aco: fix 64bit fsub Fixes: 425558bfd595ed3a7a049ad0f47a46b8b3c4691e ('aco: use v_subrev_f32 for fsub with an sgpr operand in src1') Reviewed-by: Rhys Perry Reviewed-by: Samuel Pitoiset Part-of: --- diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp index af1a5e4f111..1043bb2d2c0 100644 --- a/src/amd/compiler/aco_instruction_selection.cpp +++ b/src/amd/compiler/aco_instruction_selection.cpp @@ -1654,7 +1654,7 @@ void visit_alu_instr(isel_context *ctx, nir_alu_instr *instr) emit_vop2_instruction(ctx, instr, aco_opcode::v_subrev_f32, dst, true); } else if (dst.regClass() == v2) { Instruction* add = bld.vop3(aco_opcode::v_add_f64, Definition(dst), - src0, src1); + as_vgpr(ctx, src0), as_vgpr(ctx, src1)); VOP3A_instruction* sub = static_cast(add); sub->neg[1] = true; } else {