Lines Matching refs:LegalOperations
149 bool LegalOperations = false; member in __anonc943a8c40111::DAGCombiner
327 TargetLowering::TargetLoweringOpt TLO(DAG, LegalTypes, LegalOperations); in SimplifyDemandedBits()
767 return TLI.isOperationLegalOrCustom(Opcode, VT, LegalOperations); in hasOperation()
1163 TargetLowering::TargetLoweringOpt TLO(DAG, LegalTypes, LegalOperations); in SimplifyDemandedBits()
1182 TargetLowering::TargetLoweringOpt TLO(DAG, LegalTypes, LegalOperations); in SimplifyDemandedVectorElts()
1281 if (!LegalOperations) in PromoteIntBinOp()
1349 if (!LegalOperations) in PromoteIntShiftOp()
1398 if (!LegalOperations) in PromoteExtend()
1426 if (!LegalOperations) in PromoteLoad()
1509 LegalOperations = Level >= AfterLegalizeVectorOps; in Run()
2315 if ((!LegalOperations || in visitADDLike()
2501 if ((!LegalOperations || TLI.isOperationLegal(ISD::OR, VT)) && in visitADD()
2902 if (!LegalOperations || in visitADDCARRY()
2941 if (!LegalOperations || in visitSADDO_CARRY()
3197 !(!LegalOperations || hasOperation(ISD::USUBSAT, DstVT))) in foldSubToUSubSat()
3244 SelectionDAG &DAG, bool LegalOperations) { in tryFoldToZero() argument
3247 if (!LegalOperations || TLI.isOperationLegal(ISD::BUILD_VECTOR, VT)) in tryFoldToZero()
3271 return tryFoldToZero(DL, TLI, VT, DAG, LegalOperations); in visitSUB()
3298 if (!LegalOperations || TLI.isOperationLegal(NewSh, VT)) in visitSUB()
3541 if (!LegalOperations && TLI.isOffsetFoldingLegal(GA)) { in visitSUB()
3579 if (!LegalOperations && N1.getOpcode() == ISD::SRL && N1.hasOneUse()) { in visitSUB()
3724 if (!LegalOperations || in visitSUBCARRY()
3739 if (!LegalOperations || in visitSSUBO_CARRY()
3976 if ((!LegalOperations || TLI.isOperationLegalOrCustom(ISD::AND, VT)) && in visitMUL()
4580 if (!HiExists && (!LegalOperations || in SimplifyNodeWithTwoResults()
4588 if (!LoExists && (!LegalOperations || in SimplifyNodeWithTwoResults()
4604 (!LegalOperations || in SimplifyNodeWithTwoResults()
4614 (!LegalOperations || in SimplifyNodeWithTwoResults()
4844 if ((VT.isVector() || LegalOperations) && in hoistLogicOpWithSameOpcodeHands()
4867 if (LegalOperations && !TLI.isOperationLegal(LogicOpcode, XVT)) in hoistLogicOpWithSameOpcodeHands()
4948 ShOp = tryFoldToZero(DL, TLI, VT, DAG, LegalOperations); in hoistLogicOpWithSameOpcodeHands()
4961 ShOp = tryFoldToZero(DL, TLI, VT, DAG, LegalOperations); in hoistLogicOpWithSameOpcodeHands()
4993 if (LegalOperations || VT.getScalarType() != MVT::i1) in foldLogicOfSetCCs()
5112 (!LegalOperations || in foldLogicOfSetCCs()
5232 (!LegalOperations || in isAndLoadExtLoad()
5248 if (LegalOperations && in isAndLoadExtLoad()
5311 if (LegalOperations && in isLegalNarrowLdSt()
5339 if (LegalOperations && in isLegalNarrowLdSt()
5923 ((!LegalOperations && LN0->isSimple()) || in visitAND()
5979 if (!LegalOperations) in MatchBSwapHWordLow()
6245 if (!LegalOperations) in MatchBSwapHWord()
6313 if (!LegalOperations && (N0.isUndef() || N1.isUndef())) in visitORLike()
6546 if ((!LegalOperations || TLI.isOperationLegal(ISD::ADD, VT)) && in visitOR()
7299 if (LegalOperations) in mergeTruncStores()
7596 if (LegalOperations && in MatchLoadCombine()
7628 if (NeedsBswap && (LegalOperations || NeedsZext) && in MatchLoadCombine()
7634 if (NeedsBswap && NeedsZext && LegalOperations && in MatchLoadCombine()
7662 SDLoc(N), LegalOperations)) in MatchLoadCombine()
7804 if (!LegalOperations || in visitXOR()
7931 return tryFoldToZero(DL, TLI, VT, DAG, LegalOperations); in visitXOR()
8586 if (!LegalOperations || in visitSRA()
9186 if (!LegalOperations || TLI.isOperationLegal(ISD::CTLZ_ZERO_UNDEF, VT)) { in visitCTLZ()
9213 if (!LegalOperations || TLI.isOperationLegal(ISD::CTTZ_ZERO_UNDEF, VT)) { in visitCTTZ()
9359 if (CondVT == MVT::i1 && !LegalOperations) { in foldSelectOfConstants()
9607 if (!LegalOperations && TLI.isOperationLegalOrCustom(ISD::UADDO, VT) && in visitSELECT()
9632 (!LegalOperations && in visitSELECT()
10672 (LegalOperations && !TLI.isOperationLegal(N0.getOpcode(), VT))) in CombineZExtLogicopShiftLoad()
10679 (LegalOperations && !TLI.isOperationLegal(N1.getOpcode(), VT))) in CombineZExtLogicopShiftLoad()
10750 if (LegalOperations || !TLI.isOperationLegalOrCustom(ISD::VSELECT, VT)) in matchVSelectOpSizesWithSetCC()
10784 bool LegalOperations, SDNode *N, in tryToFoldExtOfExtload() argument
10795 if ((LegalOperations || !LN0->isSimple() || in tryToFoldExtOfExtload()
10815 bool LegalOperations, SDNode *N, SDValue N0, in tryToFoldExtOfLoad() argument
10820 ((LegalOperations || VT.isVector() || in tryToFoldExtOfLoad()
10882 bool LegalOperations) { in foldExtendedSignBitTest() argument
10887 if (LegalOperations || SetCC.getOpcode() != ISD::SETCC || in foldExtendedSignBitTest()
10932 if (VT.isVector() && !LegalOperations && in foldSextSetcc()
11030 (!LegalOperations || TLI.isOperationLegal(ISD::SETCC, N00VT))) { in foldSextSetcc()
11091 if (!LegalOperations || TLI.isOperationLegal(ISD::SIGN_EXTEND_INREG, in visitSIGN_EXTEND()
11104 tryToFoldExtOfLoad(DAG, *this, TLI, VT, LegalOperations, N, N0, in visitSIGN_EXTEND()
11120 DAG, *this, TLI, VT, LegalOperations, N, N0, ISD::SEXTLOAD)) in visitSIGN_EXTEND()
11129 (!LegalOperations && TLI.isOperationLegal(N0.getOpcode(), VT))) { in visitSIGN_EXTEND()
11167 if (SDValue V = foldExtendedSignBitTest(N, DAG, LegalOperations)) in visitSIGN_EXTEND()
11174 if ((!LegalOperations || TLI.isOperationLegal(ISD::ZERO_EXTEND, VT)) && in visitSIGN_EXTEND()
11203 (!LegalOperations || (TLI.isOperationLegal(ISD::ZERO_EXTEND, VT) && in visitSIGN_EXTEND()
11335 if (!LegalOperations || (TLI.isOperationLegal(ISD::AND, SrcVT) && in visitZERO_EXTEND()
11347 if (!LegalOperations || TLI.isOperationLegal(ISD::AND, VT)) { in visitZERO_EXTEND()
11376 tryToFoldExtOfLoad(DAG, *this, TLI, VT, LegalOperations, N, N0, in visitZERO_EXTEND()
11398 (!LegalOperations && TLI.isOperationLegal(N0.getOpcode(), VT))) { in visitZERO_EXTEND()
11455 DAG, *this, TLI, VT, LegalOperations, N, N0, ISD::ZEXTLOAD)) in visitZERO_EXTEND()
11458 if (SDValue V = foldExtendedSignBitTest(N, DAG, LegalOperations)) in visitZERO_EXTEND()
11463 if (!LegalOperations && VT.isVector() && in visitZERO_EXTEND()
11598 tryToFoldExtOfLoad(DAG, *this, TLI, VT, LegalOperations, N, N0, in visitANY_EXTEND()
11638 if (!LegalOperations || TLI.isLoadExtLegal(ExtType, VT, MemVT)) { in visitANY_EXTEND()
11655 if (VT.isVector() && !LegalOperations) { in visitANY_EXTEND()
12036 (!LegalOperations || TLI.isOperationLegal(ISD::SIGN_EXTEND, VT))) in visitSIGN_EXTEND_INREG()
12056 (!LegalOperations || in visitSIGN_EXTEND_INREG()
12066 (!LegalOperations || TLI.isOperationLegal(ISD::SIGN_EXTEND, VT))) in visitSIGN_EXTEND_INREG()
12106 ((!LegalOperations && cast<LoadSDNode>(N0)->isSimple() && in visitSIGN_EXTEND_INREG()
12124 ((!LegalOperations && cast<LoadSDNode>(N0)->isSimple()) && in visitSIGN_EXTEND_INREG()
12249 LegalTypes && !LegalOperations && N0->hasOneUse() && VT != MVT::i1) { in visitTRUNCATE()
12275 if ((!LegalOperations || TLI.isOperationLegal(ISD::SELECT, SrcVT)) && in visitTRUNCATE()
12287 (!LegalOperations || TLI.isOperationLegal(ISD::SHL, VT)) && in visitTRUNCATE()
12309 if (N0.getOpcode() == ISD::BUILD_VECTOR && !LegalOperations && in visitTRUNCATE()
12437 (!LegalOperations || in visitTRUNCATE()
12457 ((!LegalOperations && N0.getOpcode() == ISD::ADDCARRY) || in visitTRUNCATE()
12496 if (!LegalOperations && N0.hasOneUse() && in visitTRUNCATE()
12514 if (!LegalOperations && N0.hasOneUse() && in visitTRUNCATE()
12561 (!LegalOperations || TLI.isOperationLegal(ISD::LOAD, VT))) in CombineConsecutiveLoads()
12643 (!LegalOperations && VT.isInteger() && N0.getValueType().isInteger() && in visitBITCAST()
12655 if (!LegalOperations || in visitBITCAST()
12681 ((!LegalOperations && cast<LoadSDNode>(N0)->isSimple()) || in visitBITCAST()
13015 bool HasFMAD = (LegalOperations && TLI.isFMADLegal(DAG, N)); in visitFADDForFMACombine()
13020 (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::FMA, VT)); in visitFADDForFMACombine()
13223 bool HasFMAD = (LegalOperations && TLI.isFMADLegal(DAG, N)); in visitFSUBForFMACombine()
13228 (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::FMA, VT)); in visitFSUBForFMACombine()
13547 (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::FMA, VT)); in visitFMULForFMADistributiveCombine()
13552 (LegalOperations && TLI.isFMADLegal(DAG, N)); in visitFMULForFMADistributiveCombine()
13656 if (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::FSUB, VT)) in visitFADD()
13658 N1, DAG, LegalOperations, ForCodeSize)) in visitFADD()
13662 if (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::FSUB, VT)) in visitFADD()
13664 N0, DAG, LegalOperations, ForCodeSize)) in visitFADD()
13810 if (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::STRICT_FSUB, VT)) in visitSTRICT_FADD()
13812 N1, DAG, LegalOperations, ForCodeSize)) { in visitSTRICT_FADD()
13818 if (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::STRICT_FSUB, VT)) in visitSTRICT_FADD()
13820 N0, DAG, LegalOperations, ForCodeSize)) { in visitSTRICT_FADD()
13878 TLI.getNegatedExpression(N1, DAG, LegalOperations, ForCodeSize)) in visitFSUB()
13880 if (!LegalOperations || TLI.isOperationLegal(ISD::FNEG, VT)) in visitFSUB()
13899 TLI.getNegatedExpression(N1, DAG, LegalOperations, ForCodeSize)) in visitFSUB()
13975 if (!LegalOperations || TLI.isOperationLegal(ISD::FNEG, VT)) in visitFMUL()
13984 TLI.getNegatedExpression(N0, DAG, LegalOperations, ForCodeSize, CostN0); in visitFMUL()
13986 TLI.getNegatedExpression(N1, DAG, LegalOperations, ForCodeSize, CostN1); in visitFMUL()
14075 TLI.getNegatedExpression(N0, DAG, LegalOperations, ForCodeSize, CostN0); in visitFMA()
14077 TLI.getNegatedExpression(N1, DAG, LegalOperations, ForCodeSize, CostN1); in visitFMA()
14125 (!LegalOperations || TLI.isOperationLegal(ISD::FNEG, VT))) { in visitFMA()
14161 SDValue(N, 0), DAG, LegalOperations, ForCodeSize)) in visitFMA()
14285 (!LegalOperations || in visitFDIV()
14379 TLI.getNegatedExpression(N0, DAG, LegalOperations, ForCodeSize, CostN0); in visitFDIV()
14381 TLI.getNegatedExpression(N1, DAG, LegalOperations, ForCodeSize, CostN1); in visitFDIV()
14478 if (!LegalOperations || TLI.isOperationLegal(ISD::FABS, VT)) in visitFCOPYSIGN()
14481 if (!LegalOperations || TLI.isOperationLegal(ISD::FNEG, VT)) in visitFCOPYSIGN()
14634 (!LegalOperations || in visitSINT_TO_FP()
14651 (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::ConstantFP, VT))) { in visitSINT_TO_FP()
14661 (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::ConstantFP, VT))) { in visitSINT_TO_FP()
14686 (!LegalOperations || in visitUINT_TO_FP()
14701 (!LegalOperations || TLI.isOperationLegalOrCustom(ISD::ConstantFP, VT))) { in visitUINT_TO_FP()
14950 TLI.getNegatedExpression(N0, DAG, LegalOperations, ForCodeSize)) in visitFNEG()
17951 if ((isTypeLegal(MVT::i32) && !LegalOperations && ST->isSimple()) || in replaceStoreOfFPConstant()
17962 if ((TLI.isTypeLegal(MVT::i64) && !LegalOperations && in replaceStoreOfFPConstant()
18017 if (((!LegalOperations && ST->isSimple()) || in visitSTORE()
18152 ST->getMemoryVT(), LegalOperations)) { in visitSTORE()
18550 if (LegalOperations && !TLI.isOperationLegal(ISD::BUILD_VECTOR, VT)) in visitINSERT_VECTOR_ELT()
18670 bool LegalOperations) { in scalarizeExtractedBinop() argument
18810 if (SDValue BO = scalarizeExtractedBinop(N, DAG, LegalOperations)) in visitEXTRACT_VECTOR_ELT()
18850 if (!LegalOperations || in visitEXTRACT_VECTOR_ELT()
18913 if (!LegalOperations && !IndexC && VecOp.hasOneUse() && in visitEXTRACT_VECTOR_ELT()
18923 if (!LegalOperations || !IndexC) in visitEXTRACT_VECTOR_ELT()
19264 if (LegalOperations && in createBuildVecShuffle()
19426 if (LegalOperations && !TLI.isOperationLegal(ISD::VECTOR_SHUFFLE, VT)) in reduceBuildVecToShuffle()
19654 if (LegalOperations) in convertBuildVecZextToZext()
19715 if (!LegalOperations) { in visitBUILD_VECTOR()
20016 if (!LegalOperations && Scalar.getOpcode() == ISD::SCALAR_TO_VECTOR && in visitCONCAT_VECTORS()
20181 bool LegalOperations) { in narrowInsertExtractVectorBinOp() argument
20195 if (!TLI.isOperationLegalOrCustom(BinOpcode, SubVT, LegalOperations)) in narrowInsertExtractVectorBinOp()
20217 bool LegalOperations) { in narrowExtractedVectorBinOp() argument
20221 if (SDValue V = narrowInsertExtractVectorBinOp(Extract, DAG, LegalOperations)) in narrowExtractedVectorBinOp()
20431 (!LegalOperations || TLI.isOperationLegal(ISD::BITCAST, NVT))) { in visitEXTRACT_SUBVECTOR()
20565 if (LegalOperations && !TLI.isOperationLegal(ISD::BITCAST, NVT)) in visitEXTRACT_SUBVECTOR()
20576 if (SDValue NarrowBOp = narrowExtractedVectorBinOp(N, DAG, LegalOperations)) in visitEXTRACT_SUBVECTOR()
20800 bool LegalOperations) { in combineShuffleToVectorExtend() argument
20839 if (!LegalOperations || in combineShuffleToVectorExtend()
21256 if (SDValue V = combineShuffleToVectorExtend(SVN, DAG, TLI, LegalOperations)) in visitVECTOR_SHUFFLE()
21879 if (LegalOperations) in XformToShuffleWithZero()
22081 LegalOperations)) { in SimplifyVBinOp()
22637 (!LegalOperations || TLI.isOperationLegal(ISD::SETCC, CmpOpVT))) { in SimplifySelectCC()
22700 (!LegalOperations || TLI.isOperationLegal(ISD::CTTZ, VT))) in SimplifySelectCC()
22707 (!LegalOperations || TLI.isOperationLegal(ISD::CTLZ, VT))) in SimplifySelectCC()
22736 if (SDValue S = TLI.BuildSDIV(N, DAG, LegalOperations, Built)) { in BuildSDIV()
22777 if (SDValue S = TLI.BuildUDIV(N, DAG, LegalOperations, Built)) { in BuildUDIV()