reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/CodeGen/SelectionDAG/TargetLowering.cpp
 3058   if (SDValue Fold = DAG.FoldSetCC(VT, N0, N1, Cond, dl))
 3067     return DAG.getSetCC(dl, VT, N1, N0, SwappedCC);
 3078     return DAG.getSetCC(dl, VT, N1, N0, SwappedCC);
 3102         return DAG.getSetCC(dl, VT, N0.getOperand(0).getOperand(0),
 3125         return DAG.getSetCC(dl, VT, And, DAG.getConstant(0, dl, CTVT), CC);
 3138         SDValue LHS = DAG.getSetCC(dl, VT, CTOp, Zero, InvCond);
 3139         SDValue RHS = DAG.getSetCC(dl, VT, And, Zero, Cond);
 3141         return DAG.getNode(LogicOpcode, dl, VT, LHS, RHS);
 3195             return DAG.getSetCC(dl, VT, Trunc, DAG.getConstant(0, dl, MVT::i1),
 3198           return DAG.getSetCC(dl, VT, Trunc, C, Cond);
 3212         if (TopSetCC.getValueType() == MVT::i1 && VT == MVT::i1 &&
 3227           return DAG.getSetCC(dl, VT, TopSetCC.getOperand(0),
 3284           return DAG.getSetCC(dl, VT,
 3305           return DAG.getConstant(0, dl, VT);
 3309           return DAG.getConstant(1, dl, VT);
 3313           return DAG.getConstant(C1.isNegative(), dl, VT);
 3317           return DAG.getConstant(C1.isNonNegative(), dl, VT);
 3341           return DAG.getBoolExtOrTrunc(NewSetCC, dl, VT, N0.getValueType());
 3358         return DAG.getConstant(Cond == ISD::SETNE, dl, VT);
 3372       return DAG.getSetCC(dl, VT, ZextOp,
 3382           isTypeLegal(VT) && VT.bitsLE(N0.getValueType()) &&
 3382           isTypeLegal(VT) && VT.bitsLE(N0.getValueType()) &&
 3388           return DAG.getNode(ISD::TRUNCATE, dl, VT, N0);
 3395           return DAG.getSetCC(dl, VT, N0.getOperand(0), N0.getOperand(1), CC);
 3423           return DAG.getSetCC(dl, VT, Val, N1,
 3427                  (VT == MVT::i1 ||
 3439           return DAG.getSetCC(dl, VT, Op0.getOperand(0), Op0.getOperand(1),
 3446           if (Op0.getValueType().bitsGT(VT))
 3447             Op0 = DAG.getNode(ISD::AND, dl, VT,
 3448                           DAG.getNode(ISD::TRUNCATE, dl, VT, Op0.getOperand(0)),
 3449                           DAG.getConstant(1, dl, VT));
 3450           else if (Op0.getValueType().bitsLT(VT))
 3451             Op0 = DAG.getNode(ISD::AND, dl, VT,
 3452                         DAG.getNode(ISD::ANY_EXTEND, dl, VT, Op0.getOperand(0)),
 3453                         DAG.getConstant(1, dl, VT));
 3455           return DAG.getSetCC(dl, VT, Op0,
 3461           return DAG.getSetCC(dl, VT, Op0,
 3476         return DAG.getSetCC(dl, VT, N0.getOperand(0), N1, Cond);
 3480             optimizeSetCCOfSignedTruncationCheck(VT, N0, N1, Cond, DCI, dl))
 3503         return DAG.getBoolConstant(true, dl, VT, OpVT);
 3505       if (!VT.isVector()) { // TODO: Support this for vectors.
 3510              isCondCodeLegal(NewCC, VT.getSimpleVT())) &&
 3513           return DAG.getSetCC(dl, VT, N0,
 3523         return DAG.getBoolConstant(true, dl, VT, OpVT);
 3526       if (!VT.isVector()) { // TODO: Support this for vectors.
 3530              isCondCodeLegal(NewCC, VT.getSimpleVT())) &&
 3533           return DAG.getSetCC(dl, VT, N0,
 3542         return DAG.getBoolConstant(false, dl, VT, OpVT); // X < MIN --> false
 3545       if (!VT.isVector() || DCI.isBeforeLegalizeOps()) {
 3548           return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE);
 3552           return DAG.getSetCC(dl, VT, N0,
 3560         return DAG.getBoolConstant(false, dl, VT, OpVT); // X > MAX --> false
 3563       if (!VT.isVector() || DCI.isBeforeLegalizeOps()) {
 3566           return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE);
 3570           return DAG.getSetCC(dl, VT, N0,
 3580                 VT, N0, N1, Cond, DCI, dl))
 3587     if (!VT.isVector() || DCI.isBeforeLegalizeOps()) {
 3591         return DAG.getSetCC(dl, VT, N0,
 3601         return DAG.getSetCC(dl, VT, N0, ConstMinusOne, ISD::SETGT);
 3615         (VT == ShValTy || (isTypeLegal(VT) && VT.bitsLE(ShValTy))) &&
 3615         (VT == ShValTy || (isTypeLegal(VT) && VT.bitsLE(ShValTy))) &&
 3615         (VT == ShValTy || (isTypeLegal(VT) && VT.bitsLE(ShValTy))) &&
 3625             return DAG.getNode(ISD::TRUNCATE, dl, VT,
 3635             return DAG.getNode(ISD::TRUNCATE, dl, VT,
 3660             return DAG.getSetCC(dl, VT, Shift, CmpRHS, Cond);
 3690           return DAG.getSetCC(dl, VT, Shift, CmpRHS, NewCond);
 3705       return DAG.getSetCC(dl, VT, N0, N0, Cond);
 3713         return DAG.getSetCC(dl, VT, N0.getOperand(0), NegN1, SwapCond);
 3727             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETOLE);
 3730             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETULE);
 3733             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETUGT);
 3736             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETOGT);
 3740             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETOGE);
 3743             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETUGE);
 3746             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETULT);
 3749             return DAG.getSetCC(dl, VT, N0, N1, ISD::SETOLT);
 3764       return DAG.getBoolConstant(EqTrue, dl, VT, OpVT);
 3766       return DAG.getBoolConstant(EqTrue, dl, VT, OpVT);
 3773       return DAG.getSetCC(dl, VT, N0, N1, NewCond);
 3783           return DAG.getSetCC(dl, VT, N0.getOperand(1), N1.getOperand(1), Cond);
 3785           return DAG.getSetCC(dl, VT, N0.getOperand(0), N1.getOperand(0), Cond);
 3789             return DAG.getSetCC(dl, VT, N0.getOperand(1), N1.getOperand(0),
 3792             return DAG.getSetCC(dl, VT, N0.getOperand(0), N1.getOperand(1),
 3805             return DAG.getSetCC(dl, VT, N0.getOperand(0),
 3817                 DAG.getSetCC(dl, VT, N0.getOperand(0),
 3828               DAG.getSetCC(dl, VT, N0.getOperand(1),
 3846         if (SDValue V = foldSetCCWithBinOp(VT, N0, N1, Cond, dl, DCI))
 3852       if (SDValue V = foldSetCCWithBinOp(VT, N1, N0, Cond, dl, DCI))
 3855     if (SDValue V = foldSetCCWithAnd(VT, N0, N1, Cond, dl, DCI))
 3866     if (!isIntDivCheap(VT, Attr) && !Attr.hasFnAttribute(Attribute::MinSize)) {
 3868         if (SDValue Folded = buildUREMEqFold(VT, N0, N1, Cond, DCI, dl))
 3871         if (SDValue Folded = buildSREMEqFold(VT, N0, N1, Cond, DCI, dl))
 3918     if (VT.getScalarType() != MVT::i1) {
 3923       N0 = DAG.getNode(ExtendCode, dl, VT, N0);