Lines Matching refs:N0
752 SDValue N0 = Op.getOperand(0); in SimplifyMultipleUseDemandedBits() local
753 if (DAG.isGuaranteedNotToBeUndefOrPoison(N0, DemandedElts, in SimplifyMultipleUseDemandedBits()
755 return N0; in SimplifyMultipleUseDemandedBits()
3229 SDValue N0 = Op.getOperand(0); in SimplifyDemandedVectorElts() local
3230 if (TLO.DAG.isGuaranteedNotToBeUndefOrPoison(N0, DemandedElts, in SimplifyDemandedVectorElts()
3232 return TLO.CombineTo(Op, N0); in SimplifyDemandedVectorElts()
3236 if (N0.getOpcode() == ISD::SCALAR_TO_VECTOR && DemandedElts == 1) in SimplifyDemandedVectorElts()
3239 TLO.DAG.getFreeze(N0.getOperand(0)))); in SimplifyDemandedVectorElts()
3818 TargetLowering::buildLegalVectorShuffle(EVT VT, const SDLoc &DL, SDValue N0, in buildLegalVectorShuffle() argument
3823 std::swap(N0, N1); in buildLegalVectorShuffle()
3831 return DAG.getVectorShuffle(VT, DL, N0, N1, Mask); in buildLegalVectorShuffle()
3976 SDValue TargetLowering::foldSetCCWithAnd(EVT VT, SDValue N0, SDValue N1, in foldSetCCWithAnd() argument
3979 if (N1.getOpcode() == ISD::AND && N0.getOpcode() != ISD::AND) in foldSetCCWithAnd()
3980 std::swap(N0, N1); in foldSetCCWithAnd()
3983 EVT OpVT = N0.getValueType(); in foldSetCCWithAnd()
3984 if (N0.getOpcode() != ISD::AND || !OpVT.isInteger() || in foldSetCCWithAnd()
3995 if (DAG.MaskedValueIsZero(N0, UpperBits)) in foldSetCCWithAnd()
3996 return DAG.getBoolExtOrTrunc(N0, DL, VT, OpVT); in foldSetCCWithAnd()
4006 auto *AndC = dyn_cast<ConstantSDNode>(N0.getOperand(1)); in foldSetCCWithAnd()
4008 isTypeLegal(OpVT) && N0.hasOneUse()) { in foldSetCCWithAnd()
4012 SDValue Trunc = DAG.getZExtOrTrunc(N0.getOperand(0), DL, NarrowVT); in foldSetCCWithAnd()
4023 if (N0.getOperand(0) == N1) { in foldSetCCWithAnd()
4024 X = N0.getOperand(1); in foldSetCCWithAnd()
4025 Y = N0.getOperand(0); in foldSetCCWithAnd()
4026 } else if (N0.getOperand(1) == N1) { in foldSetCCWithAnd()
4027 X = N0.getOperand(0); in foldSetCCWithAnd()
4028 Y = N0.getOperand(1); in foldSetCCWithAnd()
4046 isCondCodeLegal(Cond, N0.getSimpleValueType())) in foldSetCCWithAnd()
4047 return DAG.getSetCC(DL, VT, N0, Zero, Cond); in foldSetCCWithAnd()
4048 } else if (N0.hasOneUse() && hasAndNotCompare(Y)) { in foldSetCCWithAnd()
4062 SDValue NewAnd = DAG.getNode(ISD::AND, SDLoc(N0), OpVT, NotX, Y); in foldSetCCWithAnd()
4080 EVT SCCVT, SDValue N0, SDValue N1, ISD::CondCode Cond, DAGCombinerInfo &DCI, in optimizeSetCCOfSignedTruncationCheck() argument
4088 if (N0->getOpcode() != ISD::ADD) in optimizeSetCCOfSignedTruncationCheck()
4093 if (!(C01 = dyn_cast<ConstantSDNode>(N0->getOperand(1)))) in optimizeSetCCOfSignedTruncationCheck()
4096 SDValue X = N0->getOperand(0); in optimizeSetCCOfSignedTruncationCheck()
4164 EVT SCCVT, SDValue N0, SDValue N1C, ISD::CondCode Cond, in optimizeSetCCByHoistingAndByConstFromLogicalShift() argument
4209 if (N0.getOpcode() != ISD::AND || !N0.hasOneUse()) in optimizeSetCCByHoistingAndByConstFromLogicalShift()
4212 X = N0.getOperand(0); in optimizeSetCCByHoistingAndByConstFromLogicalShift()
4213 SDValue Mask = N0.getOperand(1); in optimizeSetCCByHoistingAndByConstFromLogicalShift()
4235 SDValue TargetLowering::foldSetCCWithBinOp(EVT VT, SDValue N0, SDValue N1, in foldSetCCWithBinOp() argument
4238 unsigned BOpcode = N0.getOpcode(); in foldSetCCWithBinOp()
4247 EVT OpVT = N0.getValueType(); in foldSetCCWithBinOp()
4248 SDValue X = N0.getOperand(0); in foldSetCCWithBinOp()
4249 SDValue Y = N0.getOperand(1); in foldSetCCWithBinOp()
4262 if (!N0.hasOneUse() || OpVT.getScalarSizeInBits() == 1) in foldSetCCWithBinOp()
4274 SDValue N0, const APInt &C1, in simplifySetCCWithCTPOP() argument
4279 SDValue CTPOP = N0; in simplifySetCCWithCTPOP()
4280 if (N0.getOpcode() == ISD::TRUNCATE && N0.hasOneUse() && !VT.isVector() && in simplifySetCCWithCTPOP()
4281 N0.getScalarValueSizeInBits() > Log2_32(N0.getOperand(0).getScalarValueSizeInBits())) in simplifySetCCWithCTPOP()
4282 CTPOP = N0.getOperand(0); in simplifySetCCWithCTPOP()
4347 static SDValue foldSetCCWithRotate(EVT VT, SDValue N0, SDValue N1, in foldSetCCWithRotate() argument
4366 if (SDValue R = getRotateSource(N0)) in foldSetCCWithRotate()
4375 EVT OpVT = N0.getValueType(); in foldSetCCWithRotate()
4376 if (N0.hasOneUse() && N0.getOpcode() == ISD::OR && C1->isZero()) { in foldSetCCWithRotate()
4377 if (SDValue R = getRotateSource(N0.getOperand(0))) { in foldSetCCWithRotate()
4378 SDValue NewOr = DAG.getNode(ISD::OR, dl, OpVT, R, N0.getOperand(1)); in foldSetCCWithRotate()
4381 if (SDValue R = getRotateSource(N0.getOperand(1))) { in foldSetCCWithRotate()
4382 SDValue NewOr = DAG.getNode(ISD::OR, dl, OpVT, R, N0.getOperand(0)); in foldSetCCWithRotate()
4390 static SDValue foldSetCCWithFunnelShift(EVT VT, SDValue N0, SDValue N1, in foldSetCCWithFunnelShift() argument
4402 if (!N0.hasOneUse() || in foldSetCCWithFunnelShift()
4403 (N0.getOpcode() != ISD::FSHL && N0.getOpcode() != ISD::FSHR)) in foldSetCCWithFunnelShift()
4406 unsigned BitWidth = N0.getScalarValueSizeInBits(); in foldSetCCWithFunnelShift()
4407 auto *ShAmtC = isConstOrConstSplat(N0.getOperand(2)); in foldSetCCWithFunnelShift()
4413 if (N0.getOpcode() == ISD::FSHR) in foldSetCCWithFunnelShift()
4434 EVT OpVT = N0.getValueType(); in foldSetCCWithFunnelShift()
4435 EVT ShAmtVT = N0.getOperand(2).getValueType(); in foldSetCCWithFunnelShift()
4436 SDValue F0 = N0.getOperand(0); in foldSetCCWithFunnelShift()
4437 SDValue F1 = N0.getOperand(1); in foldSetCCWithFunnelShift()
4458 SDValue TargetLowering::SimplifySetCC(EVT VT, SDValue N0, SDValue N1, in SimplifySetCC() argument
4464 EVT OpVT = N0.getValueType(); in SimplifySetCC()
4468 if (SDValue Fold = DAG.FoldSetCC(VT, N0, N1, Cond, dl)) in SimplifySetCC()
4472 isConstOrConstSplat(N0, /*AllowUndefs*/ false, /*AllowTruncate*/ true); in SimplifySetCC()
4483 isCondCodeLegal(SwappedCC, N0.getSimpleValueType()))) in SimplifySetCC()
4484 return DAG.getSetCC(dl, VT, N1, N0, SwappedCC); in SimplifySetCC()
4492 isCondCodeLegal(SwappedCC, N0.getSimpleValueType())) && in SimplifySetCC()
4493 DAG.doesNodeExist(ISD::SUB, DAG.getVTList(OpVT), {N1, N0}) && in SimplifySetCC()
4494 !DAG.doesNodeExist(ISD::SUB, DAG.getVTList(OpVT), {N0, N1})) in SimplifySetCC()
4495 return DAG.getSetCC(dl, VT, N1, N0, SwappedCC); in SimplifySetCC()
4497 if (SDValue V = foldSetCCWithRotate(VT, N0, N1, Cond, dl, DAG)) in SimplifySetCC()
4500 if (SDValue V = foldSetCCWithFunnelShift(VT, N0, N1, Cond, dl, DAG)) in SimplifySetCC()
4507 if (SDValue V = simplifySetCCWithCTPOP(*this, VT, N0, C1, Cond, dl, DAG)) in SimplifySetCC()
4517 N0.getOpcode() == ISD::MUL && N0.hasOneUse() && in SimplifySetCC()
4518 (N0->getFlags().hasNoUnsignedWrap() || in SimplifySetCC()
4519 N0->getFlags().hasNoSignedWrap()) && in SimplifySetCC()
4521 SDValue IsXZero = DAG.getSetCC(dl, VT, N0.getOperand(0), N1, Cond); in SimplifySetCC()
4522 SDValue IsYZero = DAG.getSetCC(dl, VT, N0.getOperand(1), N1, Cond); in SimplifySetCC()
4530 if (N0.getOpcode() == ISD::SRL && (C1.isZero() || C1.isOne()) && in SimplifySetCC()
4531 N0.getOperand(0).getOpcode() == ISD::CTLZ && in SimplifySetCC()
4532 llvm::has_single_bit<uint32_t>(N0.getScalarValueSizeInBits())) { in SimplifySetCC()
4533 if (ConstantSDNode *ShAmt = isConstOrConstSplat(N0.getOperand(1))) { in SimplifySetCC()
4535 ShAmt->getAPIntValue() == Log2_32(N0.getScalarValueSizeInBits())) { in SimplifySetCC()
4545 SDValue Zero = DAG.getConstant(0, dl, N0.getValueType()); in SimplifySetCC()
4546 return DAG.getSetCC(dl, VT, N0.getOperand(0).getOperand(0), Zero, in SimplifySetCC()
4560 DCI.isBeforeLegalize() && N0->hasOneUse()) { in SimplifySetCC()
4561 unsigned MinBits = N0.getValueSizeInBits(); in SimplifySetCC()
4564 if (N0->getOpcode() == ISD::ZERO_EXTEND) { in SimplifySetCC()
4566 MinBits = N0->getOperand(0).getValueSizeInBits(); in SimplifySetCC()
4567 PreExt = N0->getOperand(0); in SimplifySetCC()
4568 } else if (N0->getOpcode() == ISD::AND) { in SimplifySetCC()
4570 if (auto *C = dyn_cast<ConstantSDNode>(N0->getOperand(1))) in SimplifySetCC()
4573 PreExt = N0->getOperand(0); in SimplifySetCC()
4575 } else if (N0->getOpcode() == ISD::SIGN_EXTEND) { in SimplifySetCC()
4577 MinBits = N0->getOperand(0).getValueSizeInBits(); in SimplifySetCC()
4578 PreExt = N0->getOperand(0); in SimplifySetCC()
4580 } else if (auto *LN0 = dyn_cast<LoadSDNode>(N0)) { in SimplifySetCC()
4584 PreExt = N0; in SimplifySetCC()
4588 PreExt = N0; in SimplifySetCC()
4619 SDValue TopSetCC = N0->getOperand(0); in SimplifySetCC()
4620 unsigned N0Opc = N0->getOpcode(); in SimplifySetCC()
4626 isExtendedTrueVal(N1C, N0->getValueType(0), SExt))) { in SimplifySetCC()
4649 N0.getOpcode() == ISD::AND && C1 == 0 && in SimplifySetCC()
4650 N0.getNode()->hasOneUse() && in SimplifySetCC()
4651 isa<LoadSDNode>(N0.getOperand(0)) && in SimplifySetCC()
4652 N0.getOperand(0).getNode()->hasOneUse() && in SimplifySetCC()
4653 isa<ConstantSDNode>(N0.getOperand(1))) { in SimplifySetCC()
4654 auto *Lod = cast<LoadSDNode>(N0.getOperand(0)); in SimplifySetCC()
4661 unsigned origWidth = N0.getValueSizeInBits(); in SimplifySetCC()
4667 const APInt &Mask = N0.getConstantOperandAPInt(1); in SimplifySetCC()
4717 if (N0.getOpcode() == ISD::ZERO_EXTEND) { in SimplifySetCC()
4718 unsigned InSize = N0.getOperand(0).getValueSizeInBits(); in SimplifySetCC()
4754 EVT newVT = N0.getOperand(0).getValueType(); in SimplifySetCC()
4761 SDValue NewSetCC = DAG.getSetCC(dl, NewSetCCVT, N0.getOperand(0), in SimplifySetCC()
4763 return DAG.getBoolExtOrTrunc(NewSetCC, dl, VT, N0.getValueType()); in SimplifySetCC()
4770 } else if (N0.getOpcode() == ISD::SIGN_EXTEND_INREG && in SimplifySetCC()
4772 !isSExtCheaperThanZExt(cast<VTSDNode>(N0.getOperand(1))->getVT(), in SimplifySetCC()
4774 EVT ExtSrcTy = cast<VTSDNode>(N0.getOperand(1))->getVT(); in SimplifySetCC()
4776 EVT ExtDstTy = N0.getValueType(); in SimplifySetCC()
4784 assert(ExtDstTy == N0.getOperand(0).getValueType() && in SimplifySetCC()
4787 SDValue ZextOp = DAG.getNode(ISD::AND, dl, ExtDstTy, N0.getOperand(0), in SimplifySetCC()
4798 if ((N0.getOpcode() == ISD::SETCC || VT.getScalarType() != MVT::i1) && in SimplifySetCC()
4799 isTypeLegal(VT) && VT.bitsLE(N0.getValueType()) && in SimplifySetCC()
4800 (N0.getValueType() == MVT::i1 || in SimplifySetCC()
4801 getBooleanContents(N0.getValueType()) == ZeroOrOneBooleanContent) && in SimplifySetCC()
4803 N0, APInt::getBitsSetFrom(N0.getValueSizeInBits(), 1))) { in SimplifySetCC()
4806 return DAG.getNode(ISD::TRUNCATE, dl, VT, N0); in SimplifySetCC()
4808 if (N0.getOpcode() == ISD::SETCC) { in SimplifySetCC()
4809 ISD::CondCode CC = cast<CondCodeSDNode>(N0.getOperand(2))->get(); in SimplifySetCC()
4810 CC = ISD::getSetCCInverse(CC, N0.getOperand(0).getValueType()); in SimplifySetCC()
4812 isCondCodeLegal(CC, N0.getOperand(0).getSimpleValueType())) in SimplifySetCC()
4813 return DAG.getSetCC(dl, VT, N0.getOperand(0), N0.getOperand(1), CC); in SimplifySetCC()
4817 if ((N0.getOpcode() == ISD::XOR || in SimplifySetCC()
4818 (N0.getOpcode() == ISD::AND && in SimplifySetCC()
4819 N0.getOperand(0).getOpcode() == ISD::XOR && in SimplifySetCC()
4820 N0.getOperand(1) == N0.getOperand(0).getOperand(1))) && in SimplifySetCC()
4821 isOneConstant(N0.getOperand(1))) { in SimplifySetCC()
4824 unsigned BitWidth = N0.getValueSizeInBits(); in SimplifySetCC()
4825 if (DAG.MaskedValueIsZero(N0, in SimplifySetCC()
4830 if (N0.getOpcode() == ISD::XOR) { in SimplifySetCC()
4831 Val = N0.getOperand(0); in SimplifySetCC()
4833 assert(N0.getOpcode() == ISD::AND && in SimplifySetCC()
4834 N0.getOperand(0).getOpcode() == ISD::XOR); in SimplifySetCC()
4836 Val = DAG.getNode(ISD::AND, dl, N0.getValueType(), in SimplifySetCC()
4837 N0.getOperand(0).getOperand(0), in SimplifySetCC()
4838 N0.getOperand(1)); in SimplifySetCC()
4845 SDValue Op0 = N0; in SimplifySetCC()
4892 if (N0.getOpcode() == ISD::UREM && N1C->isZero() && in SimplifySetCC()
4894 KnownBits XKnown = DAG.computeKnownBits(N0.getOperand(0)); in SimplifySetCC()
4895 KnownBits YKnown = DAG.computeKnownBits(N0.getOperand(1)); in SimplifySetCC()
4897 return DAG.getSetCC(dl, VT, N0.getOperand(0), N1, Cond); in SimplifySetCC()
4903 N0.getOpcode() == ISD::SRA && isa<ConstantSDNode>(N0.getOperand(1)) && in SimplifySetCC()
4904 N0.getConstantOperandAPInt(1) == OpVT.getScalarSizeInBits() - 1 && in SimplifySetCC()
4906 return DAG.getSetCC(dl, VT, N0.getOperand(0), in SimplifySetCC()
4912 optimizeSetCCOfSignedTruncationCheck(VT, N0, N1, Cond, DCI, dl)) in SimplifySetCC()
4945 return DAG.getSetCC(dl, VT, N0, in SimplifySetCC()
4965 return DAG.getSetCC(dl, VT, N0, in SimplifySetCC()
4980 return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE); in SimplifySetCC()
4984 return DAG.getSetCC(dl, VT, N0, in SimplifySetCC()
4985 DAG.getConstant(MinVal, dl, N0.getValueType()), in SimplifySetCC()
4998 return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE); in SimplifySetCC()
5002 return DAG.getSetCC(dl, VT, N0, in SimplifySetCC()
5003 DAG.getConstant(MaxVal, dl, N0.getValueType()), in SimplifySetCC()
5012 VT, N0, N1, Cond, DCI, dl)) in SimplifySetCC()
5021 if ((CmpZero || CmpNegOne) && N0.hasOneUse()) { in SimplifySetCC()
5051 unsigned EltBits = N0.getScalarValueSizeInBits(); in SimplifySetCC()
5063 if (IsConcat(N0, Lo, Hi)) in SimplifySetCC()
5066 if (N0.getOpcode() == ISD::AND || N0.getOpcode() == ISD::OR) { in SimplifySetCC()
5068 if (IsConcat(N0.getOperand(0), Lo0, Hi0) && in SimplifySetCC()
5069 IsConcat(N0.getOperand(1), Lo1, Hi1)) { in SimplifySetCC()
5070 return MergeConcat(DAG.getNode(N0.getOpcode(), dl, OpVT, Lo0, Lo1), in SimplifySetCC()
5071 DAG.getNode(N0.getOpcode(), dl, OpVT, Hi0, Hi1)); in SimplifySetCC()
5085 return DAG.getSetCC(dl, VT, N0, in SimplifySetCC()
5093 return DAG.getSetCC(dl, VT, N0, in SimplifySetCC()
5104 EVT ShValTy = N0.getValueType(); in SimplifySetCC()
5111 getBooleanContents(N0.getValueType()) == ZeroOrOneBooleanContent) && in SimplifySetCC()
5114 N0.getOpcode() == ISD::AND) { in SimplifySetCC()
5115 if (auto *AndRHS = dyn_cast<ConstantSDNode>(N0.getOperand(1))) { in SimplifySetCC()
5123 DAG.getNode(ISD::SRL, dl, ShValTy, N0, in SimplifySetCC()
5134 DAG.getNode(ISD::SRL, dl, ShValTy, N0, in SimplifySetCC()
5145 N0.getOpcode() == ISD::AND && N0.hasOneUse()) { in SimplifySetCC()
5146 if (auto *AndRHS = dyn_cast<ConstantSDNode>(N0.getOperand(1))) { in SimplifySetCC()
5152 ISD::SRL, dl, ShValTy, N0.getOperand(0), in SimplifySetCC()
5181 DAG.getNode(ISD::SRL, dl, ShValTy, N0, in SimplifySetCC()
5190 if (!isa<ConstantFPSDNode>(N0) && isa<ConstantFPSDNode>(N1)) { in SimplifySetCC()
5199 return DAG.getSetCC(dl, VT, N0, N0, Cond); in SimplifySetCC()
5202 if (N0.getOpcode() == ISD::FNEG) { in SimplifySetCC()
5205 isCondCodeLegal(SwapCond, N0.getSimpleValueType())) { in SimplifySetCC()
5206 SDValue NegN1 = DAG.getNode(ISD::FNEG, dl, N0.getValueType(), N1); in SimplifySetCC()
5207 return DAG.getSetCC(dl, VT, N0.getOperand(0), NegN1, SwapCond); in SimplifySetCC()
5212 if (isOperationLegalOrCustom(ISD::IS_FPCLASS, N0.getValueType()) && in SimplifySetCC()
5214 bool IsFabs = N0.getOpcode() == ISD::FABS; in SimplifySetCC()
5215 SDValue Op = IsFabs ? N0.getOperand(0) : N0; in SimplifySetCC()
5228 if (!isCondCodeLegal(Cond, N0.getSimpleValueType())) { in SimplifySetCC()
5243 isCondCodeLegal(NewCond, N0.getSimpleValueType())) in SimplifySetCC()
5244 return DAG.getSetCC(dl, VT, N0, N1, NewCond); in SimplifySetCC()
5249 if (N0 == N1) { in SimplifySetCC()
5252 assert(!N0.getValueType().isInteger() && in SimplifySetCC()
5266 isCondCodeLegal(NewCond, N0.getSimpleValueType()))) in SimplifySetCC()
5267 return DAG.getSetCC(dl, VT, N0, N1, NewCond); in SimplifySetCC()
5275 N0.getValueType().isInteger()) { in SimplifySetCC()
5276 if (isBitwiseNot(N0)) { in SimplifySetCC()
5278 return DAG.getSetCC(dl, VT, N1.getOperand(0), N0.getOperand(0), Cond); in SimplifySetCC()
5281 !DAG.isConstantIntBuildVectorOrConstantInt(N0.getOperand(0))) { in SimplifySetCC()
5283 return DAG.getSetCC(dl, VT, Not, N0.getOperand(0), Cond); in SimplifySetCC()
5289 N0.getValueType().isInteger()) { in SimplifySetCC()
5290 if (N0.getOpcode() == ISD::ADD || N0.getOpcode() == ISD::SUB || in SimplifySetCC()
5291 N0.getOpcode() == ISD::XOR) { in SimplifySetCC()
5293 if (N0.getOpcode() == N1.getOpcode()) { in SimplifySetCC()
5294 if (N0.getOperand(0) == N1.getOperand(0)) in SimplifySetCC()
5295 return DAG.getSetCC(dl, VT, N0.getOperand(1), N1.getOperand(1), Cond); in SimplifySetCC()
5296 if (N0.getOperand(1) == N1.getOperand(1)) in SimplifySetCC()
5297 return DAG.getSetCC(dl, VT, N0.getOperand(0), N1.getOperand(0), Cond); in SimplifySetCC()
5298 if (isCommutativeBinOp(N0.getOpcode())) { in SimplifySetCC()
5300 if (N0.getOperand(0) == N1.getOperand(1)) in SimplifySetCC()
5301 return DAG.getSetCC(dl, VT, N0.getOperand(1), N1.getOperand(0), in SimplifySetCC()
5303 if (N0.getOperand(1) == N1.getOperand(0)) in SimplifySetCC()
5304 return DAG.getSetCC(dl, VT, N0.getOperand(0), N1.getOperand(1), in SimplifySetCC()
5314 if (auto *LHSR = dyn_cast<ConstantSDNode>(N0.getOperand(1))) { in SimplifySetCC()
5316 if (N0.getOpcode() == ISD::ADD && N0.getNode()->hasOneUse()) in SimplifySetCC()
5318 dl, VT, N0.getOperand(0), in SimplifySetCC()
5320 dl, N0.getValueType()), in SimplifySetCC()
5324 if (N0.getOpcode() == ISD::XOR && N0.getNode()->hasOneUse()) in SimplifySetCC()
5326 dl, VT, N0.getOperand(0), in SimplifySetCC()
5328 dl, N0.getValueType()), in SimplifySetCC()
5333 if (auto *SUBC = dyn_cast<ConstantSDNode>(N0.getOperand(0))) in SimplifySetCC()
5334 if (N0.getOpcode() == ISD::SUB && N0.getNode()->hasOneUse()) in SimplifySetCC()
5336 dl, VT, N0.getOperand(1), in SimplifySetCC()
5338 dl, N0.getValueType()), in SimplifySetCC()
5350 if (!LegalRHSImm || N0.hasOneUse()) in SimplifySetCC()
5351 if (SDValue V = foldSetCCWithBinOp(VT, N0, N1, Cond, dl, DCI)) in SimplifySetCC()
5357 if (SDValue V = foldSetCCWithBinOp(VT, N1, N0, Cond, dl, DCI)) in SimplifySetCC()
5360 if (SDValue V = foldSetCCWithAnd(VT, N0, N1, Cond, dl, DCI)) in SimplifySetCC()
5365 if ((N0.getOpcode() == ISD::UREM || N0.getOpcode() == ISD::SREM) && in SimplifySetCC()
5366 N0.hasOneUse() && (Cond == ISD::SETEQ || Cond == ISD::SETNE)) { in SimplifySetCC()
5370 if (N0.getOpcode() == ISD::UREM) { in SimplifySetCC()
5371 if (SDValue Folded = buildUREMEqFold(VT, N0, N1, Cond, DCI, dl)) in SimplifySetCC()
5373 } else if (N0.getOpcode() == ISD::SREM) { in SimplifySetCC()
5374 if (SDValue Folded = buildSREMEqFold(VT, N0, N1, Cond, DCI, dl)) in SimplifySetCC()
5381 if (N0.getValueType().getScalarType() == MVT::i1 && foldBooleans) { in SimplifySetCC()
5386 Temp = DAG.getNode(ISD::XOR, dl, OpVT, N0, N1); in SimplifySetCC()
5387 N0 = DAG.getNOT(dl, Temp, OpVT); in SimplifySetCC()
5392 N0 = DAG.getNode(ISD::XOR, dl, OpVT, N0, N1); in SimplifySetCC()
5396 Temp = DAG.getNOT(dl, N0, OpVT); in SimplifySetCC()
5397 N0 = DAG.getNode(ISD::AND, dl, OpVT, N1, Temp); in SimplifySetCC()
5404 N0 = DAG.getNode(ISD::AND, dl, OpVT, N0, Temp); in SimplifySetCC()
5410 Temp = DAG.getNOT(dl, N0, OpVT); in SimplifySetCC()
5411 N0 = DAG.getNode(ISD::OR, dl, OpVT, N1, Temp); in SimplifySetCC()
5418 N0 = DAG.getNode(ISD::OR, dl, OpVT, N0, Temp); in SimplifySetCC()
5423 DCI.AddToWorklist(N0.getNode()); in SimplifySetCC()
5426 N0 = DAG.getNode(ExtendCode, dl, VT, N0); in SimplifySetCC()
5428 return N0; in SimplifySetCC()
6254 SDValue N0 = N->getOperand(0); in buildSDIVPow2WithCMov() local
6261 SDValue Cmp = DAG.getSetCC(DL, CCVT, N0, Zero, ISD::SETLT); in buildSDIVPow2WithCMov()
6262 SDValue Add = DAG.getNode(ISD::ADD, DL, VT, N0, Pow2MinusOne); in buildSDIVPow2WithCMov()
6263 SDValue CMov = DAG.getNode(ISD::SELECT, DL, VT, Cmp, Add, N0); in buildSDIVPow2WithCMov()
6351 SDValue N0 = N->getOperand(0); in BuildSDIV() local
6419 SDValue Q = GetMULHS(N0, MagicFactor); in BuildSDIV()
6426 Factor = DAG.getNode(ISD::MUL, dl, VT, N0, Factor); in BuildSDIV()
6481 SDValue N0 = N->getOperand(0); in BuildUDIV() local
6486 unsigned KnownLeadingZeros = DAG.computeKnownBits(N0).countMinLeadingZeros(); in BuildUDIV()
6559 SDValue Q = N0; in BuildUDIV()
6610 SDValue NPQ = DAG.getNode(ISD::SUB, dl, VT, N0, Q); in BuildUDIV()
6635 return DAG.getSelect(dl, VT, IsOne, N0, Q); in BuildUDIV()