|
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);
3073 if (!isConstOrConstSplat(N0) && !isConstOrConstSplat(N1) &&
3076 DAG.getNodeIfExists(ISD::SUB, DAG.getVTList(OpVT), { N1, N0 } ) &&
3077 !DAG.getNodeIfExists(ISD::SUB, DAG.getVTList(OpVT), { N0, N1 } ))
3078 return DAG.getSetCC(dl, VT, N1, N0, SwappedCC);
3080 if (auto *N1C = dyn_cast<ConstantSDNode>(N1.getNode())) {
3423 return DAG.getSetCC(dl, VT, Val, N1,
3476 return DAG.getSetCC(dl, VT, N0.getOperand(0), N1, Cond);
3480 optimizeSetCCOfSignedTruncationCheck(VT, N0, N1, Cond, DCI, dl))
3486 if (auto *N1C = isConstOrConstSplat(N1)) {
3514 DAG.getConstant(C, dl, N1.getValueType()),
3534 DAG.getConstant(C, dl, N1.getValueType()),
3548 return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE);
3566 return DAG.getSetCC(dl, VT, N0, N1, ISD::SETNE);
3580 VT, N0, N1, Cond, DCI, dl))
3592 DAG.getConstant(0, dl, N1.getValueType()),
3600 N1.getValueType());
3608 if (auto *N1C = dyn_cast<ConstantSDNode>(N1.getNode())) {
3696 if (!isa<ConstantFPSDNode>(N0) && isa<ConstantFPSDNode>(N1)) {
3697 auto *CFP = cast<ConstantFPSDNode>(N1);
3712 SDValue NegN1 = DAG.getNode(ISD::FNEG, dl, N0.getValueType(), N1);
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);
3755 if (N0 == N1) {
3773 return DAG.getSetCC(dl, VT, N0, N1, NewCond);
3781 if (N0.getOpcode() == N1.getOpcode()) {
3782 if (N0.getOperand(0) == N1.getOperand(0))
3783 return DAG.getSetCC(dl, VT, N0.getOperand(1), N1.getOperand(1), Cond);
3784 if (N0.getOperand(1) == N1.getOperand(1))
3785 return DAG.getSetCC(dl, VT, N0.getOperand(0), N1.getOperand(0), Cond);
3788 if (N0.getOperand(0) == N1.getOperand(1))
3789 return DAG.getSetCC(dl, VT, N0.getOperand(1), N1.getOperand(0),
3791 if (N0.getOperand(1) == N1.getOperand(0))
3792 return DAG.getSetCC(dl, VT, N0.getOperand(0), N1.getOperand(1),
3801 if (auto *RHSC = dyn_cast<ConstantSDNode>(N1)) {
3846 if (SDValue V = foldSetCCWithBinOp(VT, N0, N1, Cond, dl, DCI))
3850 if (N1.getOpcode() == ISD::ADD || N1.getOpcode() == ISD::SUB ||
3850 if (N1.getOpcode() == ISD::ADD || N1.getOpcode() == ISD::SUB ||
3851 N1.getOpcode() == ISD::XOR)
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);
3889 N0 = DAG.getNode(ISD::XOR, dl, OpVT, N0, N1);
3894 N0 = DAG.getNode(ISD::AND, dl, OpVT, N1, Temp);
3900 Temp = DAG.getNOT(dl, N1, OpVT);
3908 N0 = DAG.getNode(ISD::OR, dl, OpVT, N1, Temp);
3914 Temp = DAG.getNOT(dl, N1, OpVT);