Home
last modified time | relevance | path

Searched refs:InstCombinerImpl (Results 1 – 16 of 16) sorted by relevance

/openbsd-src/gnu/llvm/llvm/lib/Transforms/InstCombine/
H A DInstCombineLoadStoreAlloca.cpp190 static Instruction *simplifyAllocaArraySize(InstCombinerImpl &IC, in simplifyAllocaArraySize()
262 PointerReplacer(InstCombinerImpl &IC, Instruction &Root) in PointerReplacer()
279 InstCombinerImpl ⁣
446 Instruction *InstCombinerImpl::visitAllocaInst(AllocaInst &AI) { in visitAllocaInst()
552 LoadInst *InstCombinerImpl::combineLoadToNewType(LoadInst &LI, Type *NewTy, in combineLoadToNewType()
575 static StoreInst *combineStoreToNewValue(InstCombinerImpl &IC, StoreInst &SI, in combineStoreToNewValue()
670 static Instruction *combineLoadToOperationType(InstCombinerImpl &IC, in combineLoadToOperationType()
715 static Instruction *unpackLoadToAggregate(InstCombinerImpl &IC, LoadInst &LI) { in unpackLoadToAggregate()
907 static bool canReplaceGEPIdxWithZero(InstCombinerImpl &IC, in canReplaceGEPIdxWithZero()
983 static Instruction *replaceGEPIdxWithZero(InstCombinerImpl &IC, Value *Ptr, in replaceGEPIdxWithZero()
[all …]
H A DInstCombineCasts.cpp87 Instruction *InstCombinerImpl::PromoteCastOfAllocation(BitCastInst &CI, in PromoteCastOfAllocation()
190 Value *InstCombinerImpl::EvaluateInDifferentType(Value *V, Type *Ty, in EvaluateInDifferentType()
265 InstCombinerImpl::isEliminableCastPair(const CastInst *CI1, in isEliminableCastPair()
293 Instruction *InstCombinerImpl::commonCastTransforms(CastInst &CI) { in commonCastTransforms()
396 static bool canEvaluateTruncated(Value *V, Type *Ty, InstCombinerImpl &IC, in canEvaluateTruncated()
530 InstCombinerImpl &IC) { in foldVecTruncToExtElt()
569 Instruction *InstCombinerImpl::narrowFunnelShift(TruncInst &Trunc) { in narrowFunnelShift()
670 Instruction *InstCombinerImpl::narrowBinOp(TruncInst &Trunc) { in narrowBinOp()
801 Instruction *InstCombinerImpl::visitTrunc(TruncInst &Trunc) { in visitTrunc()
1018 Instruction *InstCombinerImpl::transformZExtICmp(ICmpInst *Cmp, in transformZExtICmp()
[all …]
H A DInstructionCombining.cpp206 Value *InstCombinerImpl::EmitGEPOffset(User *GEP) { in EmitGEPOffset()
215 bool InstCombinerImpl::isDesirableIntType(unsigned BitWidth) const { in isDesirableIntType()
234 bool InstCombinerImpl::shouldChangeType(unsigned FromWidth, in shouldChangeType()
262 bool InstCombinerImpl::shouldChangeType(Type *From, Type *To) const { in shouldChangeType()
331 InstCombinerImpl &IC) { in simplifyAssocCastAssoc()
371 Value *InstCombinerImpl::simplifyIntToPtrRoundTripCast(Value *Val) { in simplifyIntToPtrRoundTripCast()
409 bool InstCombinerImpl::SimplifyAssociativeOrCommutative(BinaryOperator &I) { in SimplifyAssociativeOrCommutative()
735 Value *InstCombinerImpl::tryFactorizationFolds(BinaryOperator &I) { in tryFactorizationFolds()
778 Value *InstCombinerImpl::foldUsingDistributiveLaws(BinaryOperator &I) { in foldUsingDistributiveLaws()
870 Value *InstCombinerImpl::SimplifySelectsFeedingBinaryOp(BinaryOperator &I, in SimplifySelectsFeedingBinaryOp()
[all …]
H A DInstCombinePHI.cpp43 void InstCombinerImpl::PHIArgMergedDebugLoc(Instruction *Inst, PHINode &PN) { in PHIArgMergedDebugLoc()
106 bool InstCombinerImpl::foldIntegerTypedPHI(PHINode &PN) { in foldIntegerTypedPHI()
307 Instruction *InstCombinerImpl::foldPHIArgIntToPtrToPHI(PHINode &PN) { in foldPHIArgIntToPtrToPHI()
331 InstCombinerImpl::foldPHIArgInsertValueInstructionIntoPHI(PHINode &PN) { in foldPHIArgInsertValueInstructionIntoPHI()
371 InstCombinerImpl::foldPHIArgExtractValueInstructionIntoPHI(PHINode &PN) { in foldPHIArgExtractValueInstructionIntoPHI()
407 Instruction *InstCombinerImpl::foldPHIArgBinOpIntoPHI(PHINode &PN) { in foldPHIArgBinOpIntoPHI()
502 Instruction *InstCombinerImpl::foldPHIArgGEPIntoPHI(PHINode &PN) { in foldPHIArgGEPIntoPHI()
665 Instruction *InstCombinerImpl::foldPHIArgLoadIntoPHI(PHINode &PN) { in foldPHIArgLoadIntoPHI()
788 Instruction *InstCombinerImpl::foldPHIArgZextsIntoPHI(PHINode &Phi) { in foldPHIArgZextsIntoPHI()
862 Instruction *InstCombinerImpl::foldPHIArgOpIntoPHI(PHINode &PN) { in foldPHIArgOpIntoPHI()
[all …]
H A DInstCombineCompares.cpp107 Instruction *InstCombinerImpl::foldCmpLoadFromIndexedGlobal( in foldCmpLoadFromIndexedGlobal()
726 Instruction *InstCombinerImpl::foldGEPICmp(GEPOperator *GEPLHS, Value *RHS, in foldGEPICmp()
900 Instruction *InstCombinerImpl::foldAllocaCmp(ICmpInst &ICI, in foldAllocaCmp()
976 Instruction *InstCombinerImpl::foldICmpAddOpConst(Value *X, const APInt &C, in foldICmpAddOpConst()
1026 Instruction *InstCombinerImpl::foldICmpShrConstConst(ICmpInst &I, Value *A, in foldICmpShrConstConst()
1085 Instruction *InstCombinerImpl::foldICmpShlConstConst(ICmpInst &I, Value *A, in foldICmpShlConstConst()
1131 InstCombinerImpl &IC) { in processUGT_ADDCST_ADD()
1216 Instruction *InstCombinerImpl::foldIRemByPowerOfTwoToBitTest(ICmpInst &I) { in foldIRemByPowerOfTwoToBitTest()
1235 Instruction *InstCombinerImpl::foldSignBitTest(ICmpInst &I) { in foldSignBitTest()
1266 Instruction *InstCombinerImpl::foldICmpWithZero(ICmpInst &Cmp) { in foldICmpWithZero()
[all …]
H A DInstCombineShifts.cpp58 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()
853 Instruction *InstCombinerImpl::foldLShrOverflowBit(BinaryOperator &I) { in foldLShrOverflowBit()
910 Instruction *InstCombinerImpl::visitShl(BinaryOperator &I) { in visitShl()
1149 Instruction *InstCombinerImpl::visitLShr(BinaryOperator &I) { in visitLShr()
1411 InstCombinerImpl::foldVariableSignZeroExtensionOfVariableHighBitExtract( in foldVariableSignZeroExtensionOfVariableHighBitExtract()
[all …]
H A DInstCombineMulDivRem.cpp46 static Value *simplifyValueKnownNonZero(Value *V, InstCombinerImpl &IC, in simplifyValueKnownNonZero()
188 Instruction *InstCombinerImpl::visitMul(BinaryOperator &I) { in visitMul()
488 Instruction *InstCombinerImpl::foldFPSignBitOps(BinaryOperator &I) { in foldFPSignBitOps()
521 Instruction *InstCombinerImpl::visitFMul(BinaryOperator &I) { in visitFMul()
774 bool InstCombinerImpl::simplifyDivRemOfSelectWithZeroOp(BinaryOperator &I) { in simplifyDivRemOfSelectWithZeroOp()
938 Instruction *InstCombinerImpl::commonIDivTransforms(BinaryOperator &I) { in commonIDivTransforms()
1240 Instruction *InstCombinerImpl::visitUDiv(BinaryOperator &I) { in visitUDiv()
1322 Instruction *InstCombinerImpl::visitSDiv(BinaryOperator &I) { in visitSDiv()
1455 Instruction *InstCombinerImpl::foldFDivConstantDivisor(BinaryOperator &I) { in foldFDivConstantDivisor()
1577 Instruction *InstCombinerImpl::visitFDiv(BinaryOperator &I) { in visitFDiv()
[all …]
H A DInstCombineInternal.h61 class LLVM_LIBRARY_VISIBILITY InstCombinerImpl final
63 public InstVisitor<InstCombinerImpl, Instruction *> {
65 InstCombinerImpl(InstructionWorklist &Worklist, BuilderTy &Builder, in InstCombinerImpl() function
74 virtual ~InstCombinerImpl() = default;
705 InstCombinerImpl &IC);
H A DInstCombineCalls.cpp120 Instruction *InstCombinerImpl::SimplifyAnyMemTransfer(AnyMemTransferInst *MI) { in SimplifyAnyMemTransfer()
244 Instruction *InstCombinerImpl::SimplifyAnyMemSet(AnyMemSetInst *MI) { in SimplifyAnyMemSet()
321 Value *InstCombinerImpl::simplifyMaskedLoad(IntrinsicInst &II) { in simplifyMaskedLoad()
351 Instruction *InstCombinerImpl::simplifyMaskedStore(IntrinsicInst &II) { in simplifyMaskedStore()
389 Instruction *InstCombinerImpl::simplifyMaskedGather(IntrinsicInst &II) { in simplifyMaskedGather()
417 Instruction *InstCombinerImpl::simplifyMaskedScatter(IntrinsicInst &II) { in simplifyMaskedScatter()
479 InstCombinerImpl &IC) { in simplifyInvariantGroupIntrinsic()
510 static Instruction *foldCttzCtlz(IntrinsicInst &II, InstCombinerImpl &IC) { in foldCttzCtlz()
616 static Instruction *foldCtpop(IntrinsicInst &II, InstCombinerImpl &IC) { in foldCtpop()
766 removeTriviallyEmptyRange(IntrinsicInst &EndI, InstCombinerImpl &IC, in removeTriviallyEmptyRange()
[all …]
H A DInstCombineAndOrXor.cpp90 Value *InstCombinerImpl::insertRangeTest(Value *V, const APInt &Lo, in insertRangeTest()
664 Value *InstCombinerImpl::simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, in simplifyRangeCheck()
717 Value *InstCombinerImpl::foldAndOrOfICmpsOfAndWithPow2(ICmpInst *LHS, in foldAndOrOfICmpsOfAndWithPow2()
1047 Value *InstCombinerImpl::foldEqOfParts(ICmpInst *Cmp0, ICmpInst *Cmp1, in foldEqOfParts()
1141 Value *InstCombinerImpl::foldAndOrOfICmpsUsingRanges(ICmpInst *ICmp1, in foldAndOrOfICmpsUsingRanges()
1249 Value *InstCombinerImpl::foldLogicOfFCmps(FCmpInst *LHS, FCmpInst *RHS, in foldLogicOfFCmps()
1325 Instruction *InstCombinerImpl::foldLogicOfIsFPClass(BinaryOperator &BO, in foldLogicOfIsFPClass()
1366 Instruction *InstCombinerImpl::canonicalizeConditionalNegationViaMathToSelect( in canonicalizeConditionalNegationViaMathToSelect()
1465 bool InstCombinerImpl::shouldOptimizeCast(CastInst *CI) { in shouldOptimizeCast()
1521 Instruction *InstCombinerImpl::foldCastedBitwiseLogic(BinaryOperator &I) { in foldCastedBitwiseLogic()
[all …]
H A DInstCombineVectorOps.cpp100 Instruction *InstCombinerImpl::scalarizePHI(ExtractElementInst &EI, in scalarizePHI()
180 Instruction *InstCombinerImpl::foldBitcastExtElt(ExtractElementInst &Ext) { in foldBitcastExtElt()
395 Instruction *InstCombinerImpl::visitExtractElementInst(ExtractElementInst &EI) { in visitExtractElementInst()
685 InstCombinerImpl &IC) { in replaceExtractElements()
767 InstCombinerImpl &IC) { in collectShuffleElements()
851 Instruction *InstCombinerImpl::foldAggregateConstructionIntoAggregateReuse( in foldAggregateConstructionIntoAggregateReuse()
1131 Instruction *InstCombinerImpl::visitInsertValueInst(InsertValueInst &I) { in visitInsertValueInst()
1583 Instruction *InstCombinerImpl::visitInsertElementInst(InsertElementInst &IE) { in visitInsertElementInst()
2199 Instruction *InstCombinerImpl::foldSelectShuffle(ShuffleVectorInst &Shuf) { in foldSelectShuffle()
2544 InstCombinerImpl &IC) { in foldShuffleWithInsert()
[all …]
H A DInstCombineAtomicRMW.cpp103 Instruction *InstCombinerImpl::visitAtomicRMWInst(AtomicRMWInst &RMWI) { in visitAtomicRMWInst()
H A DInstCombineSelect.cpp57 InstCombinerImpl &IC) { in foldSelectBinOpIdentity()
263 Instruction *InstCombinerImpl::foldSelectOpOp(SelectInst &SI, Instruction *TI, in foldSelectOpOp()
462 Instruction *InstCombinerImpl::foldSelectIntoOp(SelectInst &SI, Value *TrueVal, in foldSelectIntoOp()
756 static Instruction *foldSelectZeroOrMul(SelectInst &SI, InstCombinerImpl &IC) { in foldSelectZeroOrMul()
1135 InstCombinerImpl &IC) { in canonicalizeSPF()
1223 Instruction *InstCombinerImpl::foldSelectValueEquivalence(SelectInst &Sel, in foldSelectValueEquivalence()
1501 InstCombinerImpl &IC) { in tryToReuseConstantFromSelectInComparison()
1627 Instruction *InstCombinerImpl::foldSelectInstWithICmp(SelectInst &SI, in foldSelectInstWithICmp()
1799 Instruction *InstCombinerImpl::foldSPFofSPF(Instruction *Inner, in foldSPFofSPF()
2010 Instruction *InstCombinerImpl::foldSelectExtConst(SelectInst &Sel) { in foldSelectExtConst()
[all …]
H A DInstCombineSimplifyDemanded.cpp55 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()
999 Value *InstCombinerImpl::SimplifyMultipleUseDemandedBits( in SimplifyMultipleUseDemandedBits()
1160 Value *InstCombinerImpl::simplifyShrShlDemandedBits( in simplifyShrShlDemandedBits()
1235 Value *InstCombinerImpl::SimplifyDemandedVectorElts(Value *V, in SimplifyDemandedVectorElts()
H A DInstCombineAddSub.cpp849 Instruction *InstCombinerImpl::foldAddWithConstant(BinaryOperator &Add) { in foldAddWithConstant()
1056 Value *InstCombinerImpl::SimplifyAddWithRemainder(BinaryOperator &I) { in SimplifyAddWithRemainder()
1161 Instruction *InstCombinerImpl::
1338 Instruction *InstCombinerImpl::visitAdd(BinaryOperator &I) { in visitAdd()
1643 Instruction *InstCombinerImpl::visitFAdd(BinaryOperator &I) { in visitFAdd()
1795 Value *InstCombinerImpl::OptimizePointerDifference(Value *LHS, Value *RHS, in OptimizePointerDifference()
1917 Instruction *InstCombinerImpl::visitSub(BinaryOperator &I) { in visitSub()
2455 Instruction *InstCombinerImpl::visitFNeg(UnaryOperator &I) { in visitFNeg()
2531 Instruction *InstCombinerImpl::visitFSub(BinaryOperator &I) { in visitFSub()
H A DInstCombineNegator.cpp529 InstCombinerImpl &IC) { in Negate()