diff --git a/llvm/lib/Target/RISCV/RISCVInstrFormats.td b/llvm/lib/Target/RISCV/RISCVInstrFormats.td index 468fd781d394..848ccd31b164 100644 --- a/llvm/lib/Target/RISCV/RISCVInstrFormats.td +++ b/llvm/lib/Target/RISCV/RISCVInstrFormats.td @@ -217,6 +217,8 @@ class RVInst MemScope = 0; let TSFlags{22-21} = MemScope; + + let isConvergent = 1; } // Pseudo instructions diff --git a/llvm/lib/Target/RISCV/VentusInstrInfoV.td b/llvm/lib/Target/RISCV/VentusInstrInfoV.td index a3718bc5488c..849f27b20e25 100644 --- a/llvm/lib/Target/RISCV/VentusInstrInfoV.td +++ b/llvm/lib/Target/RISCV/VentusInstrInfoV.td @@ -1367,12 +1367,6 @@ def : Pat<(fabs (f32 VGPR:$rs1)), (VFSGNJX_VV $rs1, $rs1)>; // Patterns for ternary operations // TODO: vmacc/vfmacc, vnmsac/vfnmsac -defm : PatVXFTer<[DivergentBinFrag, DivergentBinFrag], f32, - GPRF32, [VFMADD_VV, VFMADD_VF]>; -defm : PatVXFTer<[DivergentBinFrag, DivergentBinFrag], f32, - GPRF32, [VFMSUB_VV, VFMSUB_VF, VFNMADD_VV, VFNMADD_VF]>; -defm : PatVXFTer<[ReverseDivergentBinFrag, DivergentBinFrag], - f32, GPRF32, [VFNMSUB_VV, VFNMSUB_VF]>; defm : PatVXFTer<[DivergentBinFrag, DivergentBinFrag], XLenVT, GPR, [VMADD_VV, VMADD_VX]>; defm : PatVXFTer<[ReverseDivergentBinFrag, DivergentBinFrag],