@@ -5158,11 +5158,9 @@ SDValue TargetLowering::BuildSDIV(SDNode *N, SelectionDAG &DAG,
5158
5158
// Multiply the numerator (operand 0) by the magic value.
5159
5159
// FIXME: We should support doing a MUL in a wider type.
5160
5160
SDValue Q;
5161
- if (IsAfterLegalization ? isOperationLegal (ISD::MULHS, VT)
5162
- : isOperationLegalOrCustom (ISD::MULHS, VT))
5161
+ if (isOperationLegalOrCustom (ISD::MULHS, VT, IsAfterLegalization))
5163
5162
Q = DAG.getNode (ISD::MULHS, dl, VT, N0, MagicFactor);
5164
- else if (IsAfterLegalization ? isOperationLegal (ISD::SMUL_LOHI, VT)
5165
- : isOperationLegalOrCustom (ISD::SMUL_LOHI, VT)) {
5163
+ else if (isOperationLegalOrCustom (ISD::SMUL_LOHI, VT, IsAfterLegalization)) {
5166
5164
SDValue LoHi =
5167
5165
DAG.getNode (ISD::SMUL_LOHI, dl, DAG.getVTList (VT, VT), N0, MagicFactor);
5168
5166
Q = SDValue (LoHi.getNode (), 1 );
@@ -5286,11 +5284,9 @@ SDValue TargetLowering::BuildUDIV(SDNode *N, SelectionDAG &DAG,
5286
5284
5287
5285
// FIXME: We should support doing a MUL in a wider type.
5288
5286
auto GetMULHU = [&](SDValue X, SDValue Y) {
5289
- if (IsAfterLegalization ? isOperationLegal (ISD::MULHU, VT)
5290
- : isOperationLegalOrCustom (ISD::MULHU, VT))
5287
+ if (isOperationLegalOrCustom (ISD::MULHU, VT, IsAfterLegalization))
5291
5288
return DAG.getNode (ISD::MULHU, dl, VT, X, Y);
5292
- if (IsAfterLegalization ? isOperationLegal (ISD::UMUL_LOHI, VT)
5293
- : isOperationLegalOrCustom (ISD::UMUL_LOHI, VT)) {
5289
+ if (isOperationLegalOrCustom (ISD::UMUL_LOHI, VT, IsAfterLegalization)) {
5294
5290
SDValue LoHi =
5295
5291
DAG.getNode (ISD::UMUL_LOHI, dl, DAG.getVTList (VT, VT), X, Y);
5296
5292
return SDValue (LoHi.getNode (), 1 );
0 commit comments