From cb6fc4b0a35402a946e17b101ecd5cd0edd8c602 Mon Sep 17 00:00:00 2001 From: Craig Topper Date: Tue, 23 Feb 2021 23:52:01 -0800 Subject: [PATCH] [LegalizeIntegerTypes] Use GetExpandedInteger instead of SplitInteger in ExpandIntRes_XMULO. We know the input is going to be expanded as well, so we should just ask for the already expanded operands. Otherwise we create nodes that are just going to need to be legalized. --- llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp index 962ae67..8316289 100644 --- a/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp @@ -3940,10 +3940,10 @@ void DAGTypeLegalizer::ExpandIntRes_XMULO(SDNode *N, // %res = { %5.0, %0 || %1.1 || %2.1 || %5.1 } SDValue LHS = N->getOperand(0), RHS = N->getOperand(1); SDValue LHSHigh, LHSLow, RHSHigh, RHSLow; - SplitInteger(LHS, LHSLow, LHSHigh); - SplitInteger(RHS, RHSLow, RHSHigh); - EVT HalfVT = LHSLow.getValueType() - , BitVT = N->getValueType(1); + GetExpandedInteger(LHS, LHSLow, LHSHigh); + GetExpandedInteger(RHS, RHSLow, RHSHigh); + EVT HalfVT = LHSLow.getValueType(); + EVT BitVT = N->getValueType(1); SDVTList VTHalfMulO = DAG.getVTList(HalfVT, BitVT); SDVTList VTFullAddO = DAG.getVTList(VT, BitVT); -- 2.7.4