|
reference, declaration → definition
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);
3101 SDValue Zero = DAG.getConstant(0, dl, N0.getValueType());
3102 return DAG.getSetCC(dl, VT, N0.getOperand(0).getOperand(0),
3121 SDValue NegOne = DAG.getAllOnesConstant(dl, CTVT);
3122 SDValue Add = DAG.getNode(ISD::ADD, dl, CTVT, CTOp, NegOne);
3123 SDValue And = DAG.getNode(ISD::AND, dl, CTVT, CTOp, Add);
3125 return DAG.getSetCC(dl, VT, And, DAG.getConstant(0, dl, CTVT), CC);
3125 return DAG.getSetCC(dl, VT, And, DAG.getConstant(0, dl, CTVT), CC);
3133 SDValue Zero = DAG.getConstant(0, dl, CTVT);
3134 SDValue NegOne = DAG.getAllOnesConstant(dl, CTVT);
3136 SDValue Add = DAG.getNode(ISD::ADD, dl, CTVT, CTOp, NegOne);
3137 SDValue And = DAG.getNode(ISD::AND, dl, CTVT, CTOp, Add);
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);
3192 SDValue Trunc = DAG.getNode(ISD::TRUNCATE, dl, MinVT, PreExt);
3195 return DAG.getSetCC(dl, VT, Trunc, DAG.getConstant(0, dl, MVT::i1),
3195 return DAG.getSetCC(dl, VT, Trunc, DAG.getConstant(0, dl, MVT::i1),
3197 SDValue C = DAG.getConstant(C1.trunc(MinBits), dl, MinVT);
3198 return DAG.getSetCC(dl, VT, Trunc, C, Cond);
3227 return DAG.getSetCC(dl, VT, TopSetCC.getOperand(0),
3278 Ptr = DAG.getNode(ISD::ADD, dl, PtrType, Lod->getBasePtr(),
3279 DAG.getConstant(bestOffset, dl, PtrType));
3282 newVT, dl, Lod->getChain(), Ptr,
3284 return DAG.getSetCC(dl, VT,
3285 DAG.getNode(ISD::AND, dl, newVT, NewLoad,
3287 dl, newVT)),
3288 DAG.getConstant(0LL, dl, newVT), Cond);
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);
3337 SDValue NewConst = DAG.getConstant(C1.trunc(InSize), dl, newVT);
3339 SDValue NewSetCC = DAG.getSetCC(dl, NewSetCCVT, N0.getOperand(0),
3341 return DAG.getBoolExtOrTrunc(NewSetCC, dl, VT, N0.getValueType());
3358 return DAG.getConstant(Cond == ISD::SETNE, dl, VT);
3366 ZextOp = DAG.getNode(ISD::AND, dl, Op0Ty, N0.getOperand(0),
3367 DAG.getConstant(Imm, dl, Op0Ty));
3372 return DAG.getSetCC(dl, VT, ZextOp,
3376 dl, ExtDstTy),
3388 return DAG.getNode(ISD::TRUNCATE, dl, VT, N0);
3395 return DAG.getSetCC(dl, VT, N0.getOperand(0), N0.getOperand(1), CC);
3418 Val = DAG.getNode(ISD::AND, dl, N0.getValueType(),
3423 return DAG.getSetCC(dl, VT, Val, N1,
3439 return DAG.getSetCC(dl, VT, Op0.getOperand(0), Op0.getOperand(1),
3447 Op0 = DAG.getNode(ISD::AND, dl, VT,
3448 DAG.getNode(ISD::TRUNCATE, dl, VT, Op0.getOperand(0)),
3449 DAG.getConstant(1, dl, 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,
3456 DAG.getConstant(0, dl, Op0.getValueType()),
3461 return DAG.getSetCC(dl, VT, Op0,
3462 DAG.getConstant(0, dl, Op0.getValueType()),
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);
3513 return DAG.getSetCC(dl, VT, N0,
3514 DAG.getConstant(C, dl, N1.getValueType()),
3523 return DAG.getBoolConstant(true, dl, VT, OpVT);
3533 return DAG.getSetCC(dl, VT, N0,
3534 DAG.getConstant(C, dl, N1.getValueType()),
3542 return DAG.getBoolConstant(false, dl, VT, OpVT); // X < MIN --> false
3548 return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE);
3552 return DAG.getSetCC(dl, VT, N0,
3553 DAG.getConstant(MinVal, dl, N0.getValueType()),
3560 return DAG.getBoolConstant(false, dl, VT, OpVT); // X > MAX --> false
3566 return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE);
3570 return DAG.getSetCC(dl, VT, N0,
3571 DAG.getConstant(MaxVal, dl, N0.getValueType()),
3580 VT, N0, N1, Cond, DCI, dl))
3591 return DAG.getSetCC(dl, VT, N0,
3592 DAG.getConstant(0, dl, N1.getValueType()),
3599 DAG.getConstant(APInt::getAllOnesValue(OperandBitSize), dl,
3601 return DAG.getSetCC(dl, VT, N0, ConstMinusOne, ISD::SETGT);
3625 return DAG.getNode(ISD::TRUNCATE, dl, VT,
3626 DAG.getNode(ISD::SRL, dl, ShValTy, N0,
3627 DAG.getConstant(ShCt, dl, ShiftTy)));
3635 return DAG.getNode(ISD::TRUNCATE, dl, VT,
3636 DAG.getNode(ISD::SRL, dl, ShValTy, N0,
3637 DAG.getConstant(ShCt, dl, ShiftTy)));
3656 SDValue Shift = DAG.getNode(ISD::SRL, dl, CmpTy, N0.getOperand(0),
3657 DAG.getConstant(ShiftBits, dl,
3659 SDValue CmpRHS = DAG.getConstant(C1.lshr(ShiftBits), dl, CmpTy);
3660 return DAG.getSetCC(dl, VT, Shift, CmpRHS, Cond);
3687 SDValue Shift = DAG.getNode(ISD::SRL, dl, CmpTy, N0,
3688 DAG.getConstant(ShiftBits, dl, ShiftTy));
3689 SDValue CmpRHS = DAG.getConstant(NewC, dl, CmpTy);
3690 return DAG.getSetCC(dl, VT, Shift, CmpRHS, NewCond);
3705 return DAG.getSetCC(dl, VT, N0, N0, Cond);
3712 SDValue NegN1 = DAG.getNode(ISD::FNEG, dl, N0.getValueType(), N1);
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),
3808 dl, N0.getValueType()), Cond);
3817 DAG.getSetCC(dl, VT, N0.getOperand(0),
3820 dl, N0.getValueType()),
3828 DAG.getSetCC(dl, VT, N0.getOperand(1),
3831 dl, N0.getValueType()),
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))
3868 if (SDValue Folded = buildUREMEqFold(VT, N0, N1, Cond, DCI, dl))
3871 if (SDValue Folded = buildSREMEqFold(VT, N0, N1, Cond, DCI, dl))
3883 Temp = DAG.getNode(ISD::XOR, dl, OpVT, N0, N1);
3884 N0 = DAG.getNOT(dl, Temp, OpVT);
3889 N0 = DAG.getNode(ISD::XOR, dl, OpVT, N0, N1);
3893 Temp = DAG.getNOT(dl, N0, OpVT);
3894 N0 = DAG.getNode(ISD::AND, dl, OpVT, N1, Temp);
3900 Temp = DAG.getNOT(dl, N1, OpVT);
3901 N0 = DAG.getNode(ISD::AND, dl, OpVT, N0, Temp);
3907 Temp = DAG.getNOT(dl, N0, OpVT);
3908 N0 = DAG.getNode(ISD::OR, dl, OpVT, N1, Temp);
3914 Temp = DAG.getNOT(dl, N1, OpVT);
3915 N0 = DAG.getNode(ISD::OR, dl, OpVT, N0, Temp);
3923 N0 = DAG.getNode(ExtendCode, dl, VT, N0);