| /llvm-project-15.0.7/llvm/lib/Transforms/InstCombine/ |
| H A D | InstCombineLoadStoreAlloca.cpp | 167 static Instruction *simplifyAllocaArraySize(InstCombinerImpl &IC, in simplifyAllocaArraySize() 237 PointerReplacer(InstCombinerImpl &IC) : IC(IC) {} in PointerReplacer() 248 InstCombinerImpl ⁣ 354 Instruction *InstCombinerImpl::visitAllocaInst(AllocaInst &AI) { in visitAllocaInst() 577 static Instruction *combineLoadToOperationType(InstCombinerImpl &IC, in combineLoadToOperationType() 811 static bool canReplaceGEPIdxWithZero(InstCombinerImpl &IC, in canReplaceGEPIdxWithZero() 929 Instruction *InstCombinerImpl::visitLoadInst(LoadInst &LI) { in visitLoadInst() 1044 static Value *likeBitCastFromVector(InstCombinerImpl &IC, Value *V) { in likeBitCastFromVector() 1279 static bool removeBitcastsFromLoadStoreOnMinMax(InstCombinerImpl &IC, in removeBitcastsFromLoadStoreOnMinMax() 1328 Instruction *InstCombinerImpl::visitStoreInst(StoreInst &SI) { in visitStoreInst() [all …]
|
| H A D | InstCombineCasts.cpp | 252 InstCombinerImpl::isEliminableCastPair(const CastInst *CI1, in isEliminableCastPair() 641 Instruction *InstCombinerImpl::narrowBinOp(TruncInst &Trunc) { in narrowBinOp() 772 Instruction *InstCombinerImpl::visitTrunc(TruncInst &Trunc) { in visitTrunc() 1238 Instruction *InstCombinerImpl::visitZExt(ZExtInst &CI) { in visitZExt() 1499 Instruction *InstCombinerImpl::visitSExt(SExtInst &CI) { in visitSExt() 1954 Instruction *InstCombinerImpl::visitFPExt(CastInst &FPExt) { in visitFPExt() 1972 Instruction *InstCombinerImpl::foldItoFPtoI(CastInst &FI) { in foldItoFPtoI() 2012 Instruction *InstCombinerImpl::visitFPToUI(FPToUIInst &FI) { in visitFPToUI() 2019 Instruction *InstCombinerImpl::visitFPToSI(FPToSIInst &FI) { in visitFPToSI() 2026 Instruction *InstCombinerImpl::visitUIToFP(CastInst &CI) { in visitUIToFP() [all …]
|
| H A D | InstructionCombining.cpp | 204 Value *InstCombinerImpl::EmitGEPOffset(User *GEP) { in EmitGEPOffset() 213 bool InstCombinerImpl::isDesirableIntType(unsigned BitWidth) const { in isDesirableIntType() 231 bool InstCombinerImpl::shouldChangeType(unsigned FromWidth, in shouldChangeType() 328 InstCombinerImpl &IC) { in simplifyAssocCastAssoc() 635 Value *InstCombinerImpl::tryFactorization(BinaryOperator &I, in tryFactorization() 913 void InstCombinerImpl::freelyInvertAllUsersOf(Value *I) { in freelyInvertAllUsersOf() 937 Value *InstCombinerImpl::dyn_castNegVal(Value *V) const { in dyn_castNegVal() 2835 Instruction *InstCombinerImpl::visitAllocSite(Instruction &MI) { in visitAllocSite() 3872 bool InstCombinerImpl::freezeOtherUses(FreezeInst &FI) { in freezeOtherUses() 3915 Instruction *InstCombinerImpl::visitFreeze(FreezeInst &I) { in visitFreeze() [all …]
|
| H A D | InstCombinePHI.cpp | 42 void InstCombinerImpl::PHIArgMergedDebugLoc(Instruction *Inst, PHINode &PN) { in PHIArgMergedDebugLoc() 105 Instruction *InstCombinerImpl::foldIntegerTypedPHI(PHINode &PN) { in foldIntegerTypedPHI() 300 Instruction *InstCombinerImpl::foldPHIArgIntToPtrToPHI(PHINode &PN) { in foldPHIArgIntToPtrToPHI() 324 InstCombinerImpl::foldPHIArgInsertValueInstructionIntoPHI(PHINode &PN) { in foldPHIArgInsertValueInstructionIntoPHI() 364 InstCombinerImpl::foldPHIArgExtractValueInstructionIntoPHI(PHINode &PN) { in foldPHIArgExtractValueInstructionIntoPHI() 400 Instruction *InstCombinerImpl::foldPHIArgBinOpIntoPHI(PHINode &PN) { in foldPHIArgBinOpIntoPHI() 495 Instruction *InstCombinerImpl::foldPHIArgGEPIntoPHI(PHINode &PN) { in foldPHIArgGEPIntoPHI() 658 Instruction *InstCombinerImpl::foldPHIArgLoadIntoPHI(PHINode &PN) { in foldPHIArgLoadIntoPHI() 781 Instruction *InstCombinerImpl::foldPHIArgZextsIntoPHI(PHINode &Phi) { in foldPHIArgZextsIntoPHI() 855 Instruction *InstCombinerImpl::foldPHIArgOpIntoPHI(PHINode &PN) { in foldPHIArgOpIntoPHI() [all …]
|
| H A D | InstCombineCompares.cpp | 106 Instruction *InstCombinerImpl::foldCmpLoadFromIndexedGlobal( in foldCmpLoadFromIndexedGlobal() 1010 Instruction *InstCombinerImpl::foldAllocaCmp(ICmpInst &ICI, in foldAllocaCmp() 1345 Instruction *InstCombinerImpl::foldSignBitTest(ICmpInst &I) { in foldSignBitTest() 1376 Instruction *InstCombinerImpl::foldICmpWithZero(ICmpInst &Cmp) { in foldICmpWithZero() 1664 Instruction *InstCombinerImpl::foldICmpAndShift(ICmpInst &Cmp, in foldICmpAndShift() 2967 Instruction *InstCombinerImpl::foldICmpBitCast(ICmpInst &Cmp) { in foldICmpBitCast() 4068 Instruction *InstCombinerImpl::foldICmpBinOp(ICmpInst &I, in foldICmpBinOp() 4591 Instruction *InstCombinerImpl::foldICmpEquality(ICmpInst &I) { in foldICmpEquality() 5376 bool InstCombinerImpl::dominatesAllUses(const Instruction *DI, in dominatesAllUses() 6121 Instruction *InstCombinerImpl::visitICmpInst(ICmpInst &I) { in visitICmpInst() [all …]
|
| H A D | InstCombineMulDivRem.cpp | 45 static Value *simplifyValueKnownNonZero(Value *V, InstCombinerImpl &IC, in simplifyValueKnownNonZero() 142 Instruction *InstCombinerImpl::visitMul(BinaryOperator &I) { in visitMul() 429 Instruction *InstCombinerImpl::foldFPSignBitOps(BinaryOperator &I) { in foldFPSignBitOps() 462 Instruction *InstCombinerImpl::visitFMul(BinaryOperator &I) { in visitFMul() 780 Instruction *InstCombinerImpl::commonIDivTransforms(BinaryOperator &I) { in commonIDivTransforms() 1029 Instruction *InstCombinerImpl::visitUDiv(BinaryOperator &I) { in visitUDiv() 1099 Instruction *InstCombinerImpl::visitSDiv(BinaryOperator &I) { in visitSDiv() 1331 Instruction *InstCombinerImpl::visitFDiv(BinaryOperator &I) { in visitFDiv() 1496 Instruction *InstCombinerImpl::visitURem(BinaryOperator &I) { in visitURem() 1549 Instruction *InstCombinerImpl::visitSRem(BinaryOperator &I) { in visitSRem() [all …]
|
| H A D | InstCombineShifts.cpp | 58 Value *InstCombinerImpl::reassociateShiftAmtsOfTwoSameDirectionShifts( in reassociateShiftAmtsOfTwoSameDirectionShifts() 370 Instruction *InstCombinerImpl::commonShiftTransforms(BinaryOperator &I) { in commonShiftTransforms() 476 InstCombinerImpl &IC, Instruction *CxtI) { in canEvaluateShiftedShift() 527 InstCombinerImpl &IC, Instruction *CxtI) { in canEvaluateShifted() 645 InstCombinerImpl &IC, const DataLayout &DL) { in getShiftedValue() 723 Instruction *InstCombinerImpl::FoldShiftByConstant(Value *Op0, Constant *C1, in FoldShiftByConstant() 829 Instruction *InstCombinerImpl::visitShl(BinaryOperator &I) { in visitShl() 1058 Instruction *InstCombinerImpl::visitLShr(BinaryOperator &I) { in visitLShr() 1299 InstCombinerImpl::foldVariableSignZeroExtensionOfVariableHighBitExtract( in foldVariableSignZeroExtensionOfVariableHighBitExtract() 1367 Instruction *InstCombinerImpl::visitAShr(BinaryOperator &I) { in visitAShr()
|
| H A D | InstCombineCalls.cpp | 243 Instruction *InstCombinerImpl::SimplifyAnyMemSet(AnyMemSetInst *MI) { in SimplifyAnyMemSet() 314 Value *InstCombinerImpl::simplifyMaskedLoad(IntrinsicInst &II) { in simplifyMaskedLoad() 775 Instruction *InstCombinerImpl::visitVAEndInst(VAEndInst &I) { in visitVAEndInst() 1136 Instruction *InstCombinerImpl::visitCallInst(CallInst &CI) { in visitCallInst() 2698 Instruction *InstCombinerImpl::visitFenceInst(FenceInst &FI) { in visitFenceInst() 2726 Instruction *InstCombinerImpl::visitInvokeInst(InvokeInst &II) { in visitInvokeInst() 2731 Instruction *InstCombinerImpl::visitCallBrInst(CallBrInst &CBI) { in visitCallBrInst() 2778 Instruction *InstCombinerImpl::tryOptimizeCall(CallInst *CI) { in tryOptimizeCall() 2879 bool InstCombinerImpl::annotateAnyAllocSite(CallBase &Call, in annotateAnyAllocSite() 2927 Instruction *InstCombinerImpl::visitCallBase(CallBase &Call) { in visitCallBase() [all …]
|
| H A D | InstCombineInternal.h | 61 class LLVM_LIBRARY_VISIBILITY InstCombinerImpl final 63 public InstVisitor<InstCombinerImpl, Instruction *> { 65 InstCombinerImpl(InstructionWorklist &Worklist, BuilderTy &Builder, in InstCombinerImpl() function 74 virtual ~InstCombinerImpl() = default; 810 InstCombinerImpl &IC);
|
| H A D | InstCombineAndOrXor.cpp | 90 Value *InstCombinerImpl::insertRangeTest(Value *V, const APInt &Lo, in insertRangeTest() 720 Value *InstCombinerImpl::foldAndOrOfICmpsOfAndWithPow2(ICmpInst *LHS, in foldAndOrOfICmpsOfAndWithPow2() 1050 Value *InstCombinerImpl::foldEqOfParts(ICmpInst *Cmp0, ICmpInst *Cmp1, in foldEqOfParts() 1141 Value *InstCombinerImpl::foldAndOrOfICmpsUsingRanges(ICmpInst *ICmp1, in foldAndOrOfICmpsUsingRanges() 1354 bool InstCombinerImpl::shouldOptimizeCast(CastInst *CI) { in shouldOptimizeCast() 1728 Instruction *InstCombinerImpl::visitAnd(BinaryOperator &I) { in visitAnd() 2188 Instruction *InstCombinerImpl::matchBSwapOrBitReverse(Instruction &I, in matchBSwapOrBitReverse() 2378 Value *InstCombinerImpl::getSelectCondition(Value *A, Value *B) { in getSelectCondition() 2700 Instruction *InstCombinerImpl::visitOr(BinaryOperator &I) { in visitOr() 3436 Instruction *InstCombinerImpl::foldNot(BinaryOperator &I) { in foldNot() [all …]
|
| H A D | InstCombineSelect.cpp | 57 InstCombinerImpl &IC) { in foldSelectBinOpIdentity() 1092 InstCombinerImpl &IC) { in canonicalizeSPF() 1158 Instruction *InstCombinerImpl::foldSelectValueEquivalence(SelectInst &Sel, in foldSelectValueEquivalence() 1443 InstCombinerImpl &IC) { in tryToReuseConstantFromSelectInComparison() 1569 Instruction *InstCombinerImpl::foldSelectInstWithICmp(SelectInst &SI, in foldSelectInstWithICmp() 1741 Instruction *InstCombinerImpl::foldSPFofSPF(Instruction *Inner, in foldSPFofSPF() 1952 Instruction *InstCombinerImpl::foldSelectExtConst(SelectInst &Sel) { in foldSelectExtConst() 2055 InstCombinerImpl &IC) { in canonicalizeScalarSelectOfVecs() 2309 Instruction *InstCombinerImpl::foldVectorSelect(SelectInst &Sel) { in foldVectorSelect() 2510 InstCombinerImpl &IC) { in foldSelectWithFCmpToFabs() [all …]
|
| H A D | InstCombineAtomicRMW.cpp | 103 Instruction *InstCombinerImpl::visitAtomicRMWInst(AtomicRMWInst &RMWI) { in visitAtomicRMWInst()
|
| H A D | InstCombineVectorOps.cpp | 100 Instruction *InstCombinerImpl::scalarizePHI(ExtractElementInst &EI, in scalarizePHI() 180 Instruction *InstCombinerImpl::foldBitcastExtElt(ExtractElementInst &Ext) { in foldBitcastExtElt() 389 Instruction *InstCombinerImpl::visitExtractElementInst(ExtractElementInst &EI) { in visitExtractElementInst() 665 InstCombinerImpl &IC) { in replaceExtractElements() 747 InstCombinerImpl &IC) { in collectShuffleElements() 831 Instruction *InstCombinerImpl::foldAggregateConstructionIntoAggregateReuse( in foldAggregateConstructionIntoAggregateReuse() 1111 Instruction *InstCombinerImpl::visitInsertValueInst(InsertValueInst &I) { in visitInsertValueInst() 1498 Instruction *InstCombinerImpl::visitInsertElementInst(InsertElementInst &IE) { in visitInsertElementInst() 2049 Instruction *InstCombinerImpl::foldSelectShuffle(ShuffleVectorInst &Shuf) { in foldSelectShuffle() 2391 InstCombinerImpl &IC) { in foldShuffleWithInsert() [all …]
|
| H A D | InstCombineSimplifyDemanded.cpp | 55 bool InstCombinerImpl::SimplifyDemandedInstructionBits(Instruction &Inst) { in SimplifyDemandedInstructionBits() 71 bool InstCombinerImpl::SimplifyDemandedBits(Instruction *I, unsigned OpNo, in SimplifyDemandedBits() 108 Value *InstCombinerImpl::SimplifyDemandedUseBits(Value *V, APInt DemandedMask, in SimplifyDemandedUseBits() 950 Value *InstCombinerImpl::SimplifyMultipleUseDemandedBits( in SimplifyMultipleUseDemandedBits() 1096 Value *InstCombinerImpl::simplifyShrShlDemandedBits( in simplifyShrShlDemandedBits() 1171 Value *InstCombinerImpl::SimplifyDemandedVectorElts(Value *V, in SimplifyDemandedVectorElts()
|
| H A D | InstCombineAddSub.cpp | 850 Instruction *InstCombinerImpl::foldAddWithConstant(BinaryOperator &Add) { in foldAddWithConstant() 1059 Value *InstCombinerImpl::SimplifyAddWithRemainder(BinaryOperator &I) { in SimplifyAddWithRemainder() 1135 Instruction *InstCombinerImpl:: 1273 Instruction *InstCombinerImpl::visitAdd(BinaryOperator &I) { in visitAdd() 1531 Instruction *InstCombinerImpl::visitFAdd(BinaryOperator &I) { in visitFAdd() 1678 Value *InstCombinerImpl::OptimizePointerDifference(Value *LHS, Value *RHS, in OptimizePointerDifference() 1800 Instruction *InstCombinerImpl::visitSub(BinaryOperator &I) { in visitSub() 2297 Instruction *InstCombinerImpl::visitFNeg(UnaryOperator &I) { in visitFNeg() 2350 Instruction *InstCombinerImpl::visitFSub(BinaryOperator &I) { in visitFSub()
|
| H A D | InstCombineNegator.cpp | 518 InstCombinerImpl &IC) { in Negate()
|