[llvm] [Mips] Fix result type of MAdd/MSub nodes (PR #117455)
Sergei Barannikov via llvm-commits
llvm-commits at lists.llvm.org
Sat Nov 23 16:21:38 PST 2024
https://github.com/s-barannikov created https://github.com/llvm/llvm-project/pull/117455
They have one "untyped" result in `MipsInstrInfo.td`, and this type is used in DAG patterns.
>From dfa62f8d5642d5b84f2abe37e0c004c5ad119267 Mon Sep 17 00:00:00 2001
From: Sergei Barannikov <barannikov88 at gmail.com>
Date: Sun, 24 Nov 2024 03:11:42 +0300
Subject: [PATCH] [Mips] Fix result type of MAdd/MSub nodes
They have one "untyped" result in MipsInstrInfo.td,
and this type is used in DAG patterns.
---
llvm/lib/Target/Mips/MipsISelLowering.cpp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/llvm/lib/Target/Mips/MipsISelLowering.cpp b/llvm/lib/Target/Mips/MipsISelLowering.cpp
index d90348153fd3e1..be7fb5bf05d02b 100644
--- a/llvm/lib/Target/Mips/MipsISelLowering.cpp
+++ b/llvm/lib/Target/Mips/MipsISelLowering.cpp
@@ -1102,8 +1102,7 @@ static SDValue performMADD_MSUBCombine(SDNode *ROOTNode, SelectionDAG &CurDAG,
SDValue MAddOps[3] = {
CurDAG.getNode(ISD::TRUNCATE, DL, MVT::i32, Mult->getOperand(0)),
CurDAG.getNode(ISD::TRUNCATE, DL, MVT::i32, Mult->getOperand(1)), ACCIn};
- EVT VTs[2] = {MVT::i32, MVT::i32};
- SDValue MAdd = CurDAG.getNode(Opcode, DL, VTs, MAddOps);
+ SDValue MAdd = CurDAG.getNode(Opcode, DL, MVT::Untyped, MAddOps);
SDValue ResLo = CurDAG.getNode(MipsISD::MFLO, DL, MVT::i32, MAdd);
SDValue ResHi = CurDAG.getNode(MipsISD::MFHI, DL, MVT::i32, MAdd);
More information about the llvm-commits
mailing list