Lines Matching defs:SETCC
969 if (N.getOpcode() == ISD::SETCC) {
1271 if (N1->getOpcode() == ISD::SETCC && N00->getOpcode() == ISD::SETCC &&
1272 N01->getOpcode() == ISD::SETCC) {
1905 case ISD::SETCC: return visitSETCC(N);
5578 if (N0.getOperand(0).getOpcode() != ISD::SETCC)
6078 TLI.isOperationLegal(ISD::SETCC, OpVT))))
6155 "Invalid Op to combine SETCC with");
6160 if (LHS->getOpcode() != ISD::SETCC || RHS->getOpcode() != ISD::SETCC ||
6287 return DAG.getNode(ISD::SETCC, DL, VT, AbsOp,
6317 return DAG.getNode(ISD::SETCC, DL, VT, AndOp,
6325 return DAG.getNode(ISD::SETCC, DL, VT, AndOp,
9464 case ISD::SETCC:
9890 if (N01CV && N01CV->isConstant() && N00.getOpcode() == ISD::SETCC &&
11333 if (Cond.getOpcode() != ISD::SETCC || !Cond.hasOneUse() ||
11363 if (Cond.getOpcode() != ISD::SETCC || !Cond->hasOneUse())
11398 // can find the SETCC that produced it and inspect its operands. This is
11399 // fairly easy if C is the SETCC node, but it can potentially be
11703 if (N0.getOpcode() == ISD::SETCC) {
12321 if (N0.getOpcode() == ISD::SETCC) {
12381 TLI.isOperationLegalOrCustom(ISD::SETCC, WideVT)) {
12622 if (SCC.getOpcode() == ISD::SETCC) {
12654 if (PreferSetCC && Combined.getOpcode() != ISD::SETCC) {
12780 // If Carry is false, fold to a regular SETCC.
12782 return DAG.getNode(ISD::SETCC, SDLoc(N), N->getVTList(), LHS, RHS, Cond);
12963 // FIXME: Only extend SETCC N, N and SETCC N, c for now.
12964 if (ExtOpc != ISD::ANY_EXTEND && User->getOpcode() == ISD::SETCC) {
13026 CombineTo(SetCC, DAG.getNode(ISD::SETCC, DL, SetCC->getValueType(0), Ops));
13225 VSel.getOperand(0).getOpcode() != ISD::SETCC)
13298 if (User->getOpcode() == ISD::SETCC) {
13410 if (LegalOperations || SetCC.getOpcode() != ISD::SETCC ||
13442 if (N0.getOpcode() != ISD::SETCC)
13455 // On some architectures (such as SSE/NEON/etc) the SETCC result type is
13484 if (N0.hasOneUse() && TLI.isOperationLegalOrCustom(ISD::SETCC, VT) &&
13485 !TLI.isOperationLegalOrCustom(ISD::SETCC, SVT)) {
13556 (!LegalOperations || TLI.isOperationLegal(ISD::SETCC, N00VT))) {
14064 if (N0.getOpcode() == ISD::SETCC) {
14082 SDValue VSetCC = DAG.getNode(ISD::SETCC, DL, VT, N0.getOperand(0),
14092 DAG.getNode(ISD::SETCC, DL, MatchingVectorType, N0.getOperand(0),
14285 if (N0.getOpcode() == ISD::SETCC) {
15664 N0.getOpcode() == ISD::SETCC ||
17045 Cond.getOpcode() == ISD::SETCC && Cond.getOperand(0) == X &&
17744 if (N0.getOpcode() == ISD::SETCC && N0.getValueType() == MVT::i1 &&
17755 N0.getOperand(0).getOpcode() == ISD::SETCC && !VT.isVector() &&
17795 if (N0.getOpcode() == ISD::SETCC && !VT.isVector() &&
18198 // Variant of the previous fold where there is a SETCC in between:
18199 // BRCOND(SETCC(FREEZE(X), CONST, Cond))
18201 // BRCOND(FREEZE(SETCC(X, CONST, Cond)))
18203 // BRCOND(SETCC(X, CONST, Cond))
18204 // This is correct if FREEZE(X) has one use and SETCC(FREEZE(X), CONST, Cond)
18206 // For example, SETCC(FREEZE(X), -128, SETULT) cannot be folded to
18207 // FREEZE(SETCC(X, -128, SETULT)) because X can be poison.
18208 if (N1->getOpcode() == ISD::SETCC && N1.hasOneUse()) {
18255 if (N1.getOpcode() == ISD::SETCC &&
18349 if (Op0.getOpcode() != ISD::SETCC && Op1.getOpcode() != ISD::SETCC) {
18363 // Replace the uses of XOR with SETCC
18384 // Use SimplifySetCC to simplify SETCC's.
18391 if (Simp.getNode() && Simp.getOpcode() == ISD::SETCC)
27212 assert(N0.getOpcode() == ISD::SETCC &&
27219 // break it down into a new SETCC node, and a new SELECT node, and then return
27226 SDValue SETCC = DAG.getNode(ISD::SETCC, SDLoc(N0),
27230 AddToWorklist(SETCC.getNode());
27231 SDValue SelectNode = DAG.getSelect(SDLoc(SCC), SCC.getValueType(), SETCC,
27266 if (Cmp.getOpcode() == ISD::SETCC) {
27726 (!LegalOperations || TLI.isOperationLegal(ISD::SETCC, CmpOpVT))) {