| AA | llvm::InstCombiner | protected |
| AC | llvm::InstCombiner | protected |
| addDeadEdge(BasicBlock *From, BasicBlock *To, SmallVectorImpl< BasicBlock * > &Worklist) | llvm::InstCombinerImpl | |
| AddOne(Constant *C) | llvm::InstCombiner | inlinestatic |
| addToWorklist(Instruction *I) | llvm::InstCombiner | inline |
| BackEdges | llvm::InstCombiner | protected |
| BFI | llvm::InstCombiner | protected |
| BPI | llvm::InstCombiner | protected |
| Builder | llvm::InstCombiner | |
| BuilderTy typedef | llvm::InstCombiner | |
| canFreelyInvertAllUsersOf(Instruction *V, Value *IgnoredUser) | llvm::InstCombiner | inline |
| canonicalizeCondSignextOfHighBitExtractToSignextHighBitExtract(BinaryOperator &I) | llvm::InstCombinerImpl | |
| canonicalizeICmpPredicate(CmpInst &I) | llvm::InstCombinerImpl | |
| combineLoadToNewType(LoadInst &LI, Type *NewTy, const Twine &Suffix="") | llvm::InstCombinerImpl | |
| commonCastTransforms(CastInst &CI) | llvm::InstCombinerImpl | |
| commonIDivRemTransforms(BinaryOperator &I) | llvm::InstCombinerImpl | |
| commonIDivTransforms(BinaryOperator &I) | llvm::InstCombinerImpl | |
| commonIRemTransforms(BinaryOperator &I) | llvm::InstCombinerImpl | |
| commonShiftTransforms(BinaryOperator &I) | llvm::InstCombinerImpl | |
| computeBackEdges() | llvm::InstCombiner | |
| ComputedBackEdges | llvm::InstCombiner | protected |
| computeKnownBits(const Value *V, KnownBits &Known, const Instruction *CxtI, unsigned Depth=0) const | llvm::InstCombiner | inline |
| computeKnownBits(const Value *V, const Instruction *CxtI, unsigned Depth=0) const | llvm::InstCombiner | inline |
| computeKnownFPClass(Value *Val, FastMathFlags FMF, FPClassTest Interested=fcAllFlags, const Instruction *CtxI=nullptr, unsigned Depth=0) const | llvm::InstCombinerImpl | inline |
| computeKnownFPClass(Value *Val, FPClassTest Interested=fcAllFlags, const Instruction *CtxI=nullptr, unsigned Depth=0) const | llvm::InstCombinerImpl | inline |
| ComputeMaxSignificantBits(const Value *Op, const Instruction *CxtI=nullptr, unsigned Depth=0) const | llvm::InstCombiner | inline |
| ComputeNumSignBits(const Value *Op, const Instruction *CxtI=nullptr, unsigned Depth=0) const | llvm::InstCombiner | inline |
| computeOverflow(Instruction::BinaryOps BinaryOp, bool IsSigned, Value *LHS, Value *RHS, Instruction *CxtI) const | llvm::InstCombinerImpl | |
| computeOverflowForSignedAdd(const WithCache< const Value * > &LHS, const WithCache< const Value * > &RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
| computeOverflowForSignedMul(const Value *LHS, const Value *RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
| computeOverflowForSignedSub(const Value *LHS, const Value *RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
| computeOverflowForUnsignedAdd(const WithCache< const Value * > &LHS, const WithCache< const Value * > &RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
| computeOverflowForUnsignedMul(const Value *LHS, const Value *RHS, const Instruction *CxtI, bool IsNSW=false) const | llvm::InstCombiner | inline |
| computeOverflowForUnsignedSub(const Value *LHS, const Value *RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
| convertOrOfShiftsToFunnelShift(Instruction &Or) | llvm::InstCombinerImpl | |
| CreateNonTerminatorUnreachable(Instruction *InsertAt) | llvm::InstCombinerImpl | inline |
| DC | llvm::InstCombiner | protected |
| DeadEdges | llvm::InstCombiner | protected |
| DL | llvm::InstCombiner | protected |
| dominatesAllUses(const Instruction *DI, const Instruction *UI, const BasicBlock *DB) const | llvm::InstCombinerImpl | |
| DT | llvm::InstCombiner | protected |
| eraseInstFromFunction(Instruction &I) override | llvm::InstCombinerImpl | inlinevirtual |
| EvaluateInDifferentType(Value *V, Type *Ty, bool isSigned) | llvm::InstCombinerImpl | |
| F | llvm::InstCombiner | protected |
| fmulByZeroIsZero(Value *MulVal, FastMathFlags FMF, const Instruction *CtxI) const | llvm::InstCombinerImpl | |
| foldAddLikeCommutative(Value *LHS, Value *RHS, bool NSW, bool NUW) | llvm::InstCombinerImpl | |
| foldAddWithConstant(BinaryOperator &Add) | llvm::InstCombinerImpl | |
| foldAggregateConstructionIntoAggregateReuse(InsertValueInst &OrigIVI) | llvm::InstCombinerImpl | |
| foldAllocaCmp(AllocaInst *Alloca) | llvm::InstCombinerImpl | |
| foldBinOpIntoSelectOrPhi(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldBinOpOfSelectAndCastOfSelectCondition(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldBinOpShiftWithShift(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldBinopWithPhiOperands(BinaryOperator &BO) | llvm::InstCombinerImpl | |
| foldBinopWithRecurrence(BinaryOperator &BO) | llvm::InstCombinerImpl | |
| foldCmpLoadFromIndexedGlobal(LoadInst *LI, GetElementPtrInst *GEP, CmpInst &ICI, ConstantInt *AndCst=nullptr) | llvm::InstCombinerImpl | |
| foldDeadPhiWeb(PHINode &PN) | llvm::InstCombinerImpl | |
| foldFCmpIntToFPConst(FCmpInst &I, Instruction *LHSI, Constant *RHSC) | llvm::InstCombinerImpl | |
| foldFMulReassoc(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldFreezeIntoRecurrence(FreezeInst &I, PHINode *PN) | llvm::InstCombinerImpl | |
| foldGEPICmp(GEPOperator *GEPLHS, Value *RHS, CmpPredicate Cond, Instruction &I) | llvm::InstCombinerImpl | |
| foldICmpAddConstant(ICmpInst &Cmp, BinaryOperator *Add, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpAddOpConst(Value *X, const APInt &C, CmpPredicate Pred) | llvm::InstCombinerImpl | |
| foldICmpAndConstant(ICmpInst &Cmp, BinaryOperator *And, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpAndConstConst(ICmpInst &Cmp, BinaryOperator *And, const APInt &C1) | llvm::InstCombinerImpl | |
| foldICmpAndShift(ICmpInst &Cmp, BinaryOperator *And, const APInt &C1, const APInt &C2) | llvm::InstCombinerImpl | |
| foldICmpBinOp(ICmpInst &Cmp, const SimplifyQuery &SQ) | llvm::InstCombinerImpl | |
| foldICmpBinOpEqualityWithConstant(ICmpInst &Cmp, BinaryOperator *BO, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpBinOpWithConstant(ICmpInst &Cmp, BinaryOperator *BO, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpBinOpWithConstantViaTruthTable(ICmpInst &Cmp, BinaryOperator *BO, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpBitCast(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpCommutative(CmpPredicate Pred, Value *Op0, Value *Op1, ICmpInst &CxtI) | llvm::InstCombinerImpl | |
| foldICmpDivConstant(ICmpInst &Cmp, BinaryOperator *Div, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpEqIntrinsicWithConstant(ICmpInst &ICI, IntrinsicInst *II, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpEquality(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpInstWithConstant(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpInstWithConstantAllowPoison(ICmpInst &Cmp, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpInstWithConstantNotInt(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpIntrinsicWithConstant(ICmpInst &ICI, IntrinsicInst *II, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpMulConstant(ICmpInst &Cmp, BinaryOperator *Mul, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpOrConstant(ICmpInst &Cmp, BinaryOperator *Or, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpSelectConstant(ICmpInst &Cmp, SelectInst *Select, ConstantInt *C) | llvm::InstCombinerImpl | |
| foldICmpShlConstant(ICmpInst &Cmp, BinaryOperator *Shl, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpShlConstConst(ICmpInst &I, Value *ShAmt, const APInt &C1, const APInt &C2) | llvm::InstCombinerImpl | |
| foldICmpShrConstant(ICmpInst &Cmp, BinaryOperator *Shr, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpShrConstConst(ICmpInst &I, Value *ShAmt, const APInt &C1, const APInt &C2) | llvm::InstCombinerImpl | |
| foldICmpSRemConstant(ICmpInst &Cmp, BinaryOperator *UDiv, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpSubConstant(ICmpInst &Cmp, BinaryOperator *Sub, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpTruncConstant(ICmpInst &Cmp, TruncInst *Trunc, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpTruncWithTruncOrExt(ICmpInst &Cmp, const SimplifyQuery &Q) | llvm::InstCombinerImpl | |
| foldICmpUDivConstant(ICmpInst &Cmp, BinaryOperator *UDiv, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpUsingBoolRange(ICmpInst &I) | llvm::InstCombinerImpl | |
| foldICmpUsingKnownBits(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpWithCastOp(ICmpInst &ICmp) | llvm::InstCombinerImpl | |
| foldICmpWithClamp(ICmpInst &Cmp, Value *X, MinMaxIntrinsic *Min) | llvm::InstCombinerImpl | |
| foldICmpWithConstant(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpWithDominatingICmp(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpWithMinMax(Instruction &I, MinMaxIntrinsic *MinMax, Value *Z, CmpPredicate Pred) | llvm::InstCombinerImpl | |
| foldICmpWithTrunc(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpWithZero(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldICmpWithZextOrSext(ICmpInst &ICmp) | llvm::InstCombinerImpl | |
| foldICmpXorConstant(ICmpInst &Cmp, BinaryOperator *Xor, const APInt &C) | llvm::InstCombinerImpl | |
| foldICmpXorShiftConst(ICmpInst &Cmp, BinaryOperator *Xor, const APInt &C) | llvm::InstCombinerImpl | |
| foldIntegerTypedPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldIRemByPowerOfTwoToBitTest(ICmpInst &I) | llvm::InstCombinerImpl | |
| foldIsMultipleOfAPowerOfTwo(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldItoFPtoI(CastInst &FI) | llvm::InstCombinerImpl | |
| foldMultiplicationOverflowCheck(ICmpInst &Cmp) | llvm::InstCombinerImpl | |
| foldOpIntoPhi(Instruction &I, PHINode *PN, bool AllowMultipleUses=false) | llvm::InstCombinerImpl | |
| FoldOpIntoSelect(Instruction &Op, SelectInst *SI, bool FoldWithMultiUse=false, bool SimplifyBothArms=false) | llvm::InstCombinerImpl | |
| foldPHIArgBinOpIntoPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPHIArgExtractValueInstructionIntoPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPHIArgGEPIntoPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPHIArgInsertValueInstructionIntoPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPHIArgIntToPtrToPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPHIArgLoadIntoPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPHIArgOpIntoPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPHIArgZextsIntoPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| foldPowiReassoc(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldPtrToIntOrAddrOfGEP(Type *IntTy, Value *Ptr) | llvm::InstCombinerImpl | |
| foldReversedIntrinsicOperands(IntrinsicInst *II) | llvm::InstCombinerImpl | |
| foldSelectEqualityTest(SelectInst &SI) | llvm::InstCombinerImpl | |
| foldSelectExtConst(SelectInst &Sel) | llvm::InstCombinerImpl | |
| foldSelectICmp(CmpPredicate Pred, SelectInst *SI, Value *RHS, const ICmpInst &I) | llvm::InstCombinerImpl | |
| foldSelectInstWithICmp(SelectInst &SI, ICmpInst *ICI) | llvm::InstCombinerImpl | |
| foldSelectIntoOp(SelectInst &SI, Value *, Value *) | llvm::InstCombinerImpl | |
| foldSelectOfBools(SelectInst &SI) | llvm::InstCombinerImpl | |
| foldSelectOpOp(SelectInst &SI, Instruction *TI, Instruction *FI) | llvm::InstCombinerImpl | |
| foldSelectShuffle(ShuffleVectorInst &Shuf) | llvm::InstCombinerImpl | |
| foldSelectToCmp(SelectInst &SI) | llvm::InstCombinerImpl | |
| foldSelectValueEquivalence(SelectInst &SI, CmpInst &CI) | llvm::InstCombinerImpl | |
| foldSelectWithConstOpToBinOp(ICmpInst *Cmp, Value *TrueVal, Value *FalseVal) | llvm::InstCombinerImpl | |
| FoldShiftByConstant(Value *Op0, Constant *Op1, BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldShuffledIntrinsicOperands(IntrinsicInst *II) | llvm::InstCombinerImpl | |
| foldSignBitTest(ICmpInst &I) | llvm::InstCombinerImpl | |
| foldSPFofSPF(Instruction *Inner, SelectPatternFlavor SPF1, Value *A, Value *B, Instruction &Outer, SelectPatternFlavor SPF2, Value *C) | llvm::InstCombinerImpl | |
| foldSquareSumFP(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldSquareSumInt(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldUsingDistributiveLaws(BinaryOperator &I) | llvm::InstCombinerImpl | |
| foldVariableSignZeroExtensionOfVariableHighBitExtract(BinaryOperator &OldAShr) | llvm::InstCombinerImpl | |
| foldVectorBinop(BinaryOperator &Inst) | llvm::InstCombinerImpl | |
| foldVectorSelect(SelectInst &Sel) | llvm::InstCombinerImpl | |
| freelyInvertAllUsersOf(Value *V, Value *IgnoredUser=nullptr) | llvm::InstCombinerImpl | |
| freezeOtherUses(FreezeInst &FI) | llvm::InstCombinerImpl | |
| getAssumptionCache() const | llvm::InstCombiner | inline |
| getBlockFrequencyInfo() const | llvm::InstCombiner | inline |
| getComplexity(Value *V) | llvm::InstCombiner | inlinestatic |
| getDataLayout() const | llvm::InstCombiner | inline |
| getDominatorTree() const | llvm::InstCombiner | inline |
| getFreelyInverted(Value *V, bool WillInvertAllUses, BuilderTy *Builder, bool &DoesConsume) | llvm::InstCombiner | inline |
| getFreelyInverted(Value *V, bool WillInvertAllUses, BuilderTy *Builder) | llvm::InstCombiner | inline |
| getFreelyInvertedImpl(Value *V, bool WillInvertAllUses, BuilderTy *Builder, bool &DoesConsume, unsigned Depth) | llvm::InstCombiner | |
| getOptimizationRemarkEmitter() const | llvm::InstCombiner | inline |
| getProfileSummaryInfo() const | llvm::InstCombiner | inline |
| getSafeVectorConstantForBinop(BinaryOperator::BinaryOps Opcode, Constant *In, bool IsRHSConstant) | llvm::InstCombiner | inlinestatic |
| getSimplifyQuery() const | llvm::InstCombiner | inline |
| getTargetLibraryInfo() const | llvm::InstCombiner | inline |
| handlePotentiallyDeadBlocks(SmallVectorImpl< BasicBlock * > &Worklist) | llvm::InstCombinerImpl | |
| handlePotentiallyDeadSuccessors(BasicBlock *BB, BasicBlock *LiveSucc) | llvm::InstCombinerImpl | |
| handleUnreachableFrom(Instruction *I, SmallVectorImpl< BasicBlock * > &Worklist) | llvm::InstCombinerImpl | |
| InsertNewInstBefore(Instruction *New, BasicBlock::iterator Old) | llvm::InstCombiner | inline |
| InsertNewInstWith(Instruction *New, BasicBlock::iterator Old) | llvm::InstCombiner | inline |
| insertRangeTest(Value *V, const APInt &Lo, const APInt &Hi, bool isSigned, bool Inside) | llvm::InstCombinerImpl | |
| InstCombiner(InstructionWorklist &Worklist, BuilderTy &Builder, Function &F, AAResults *AA, AssumptionCache &AC, TargetLibraryInfo &TLI, TargetTransformInfo &TTI, DominatorTree &DT, OptimizationRemarkEmitter &ORE, BlockFrequencyInfo *BFI, BranchProbabilityInfo *BPI, ProfileSummaryInfo *PSI, const DataLayout &DL, ReversePostOrderTraversal< BasicBlock * > &RPOT) | llvm::InstCombiner | inline |
| InstCombinerImpl(InstructionWorklist &Worklist, BuilderTy &Builder, Function &F, AAResults *AA, AssumptionCache &AC, TargetLibraryInfo &TLI, TargetTransformInfo &TTI, DominatorTree &DT, OptimizationRemarkEmitter &ORE, BlockFrequencyInfo *BFI, BranchProbabilityInfo *BPI, ProfileSummaryInfo *PSI, const DataLayout &DL, ReversePostOrderTraversal< BasicBlock * > &RPOT) | llvm::InstCombinerImpl | inline |
| isBackEdge(const BasicBlock *From, const BasicBlock *To) | llvm::InstCombiner | inline |
| isCanonicalPredicate(CmpPredicate Pred) | llvm::InstCombiner | inlinestatic |
| isFreeToInvert(Value *V, bool WillInvertAllUses, bool &DoesConsume) | llvm::InstCombiner | inline |
| isFreeToInvert(Value *V, bool WillInvertAllUses) | llvm::InstCombiner | inline |
| isKnownToBeAPowerOfTwo(const Value *V, bool OrZero=false, const Instruction *CxtI=nullptr, unsigned Depth=0) | llvm::InstCombiner | inline |
| isValidAddrSpaceCast(unsigned FromAS, unsigned ToAS) const | llvm::InstCombiner | |
| MadeIRChange | llvm::InstCombiner | protected |
| MaskedValueIsZero(const Value *V, const APInt &Mask, const Instruction *CxtI=nullptr, unsigned Depth=0) const | llvm::InstCombiner | inline |
| matchBSwapOrBitReverse(Instruction &I, bool MatchBSwaps, bool MatchBitReversals) | llvm::InstCombinerImpl | |
| matchThreeWayIntCompare(SelectInst *SI, Value *&LHS, Value *&RHS, ConstantInt *&Less, ConstantInt *&Equal, ConstantInt *&Greater) | llvm::InstCombinerImpl | |
| MaxArraySizeForCombine | llvm::InstCombiner | |
| mergeStoreIntoSuccessor(StoreInst &SI) | llvm::InstCombinerImpl | |
| MinimizeSize | llvm::InstCombiner | protected |
| OptimizePointerDifference(Value *LHS, Value *RHS, Type *Ty, bool isNUW) | llvm::InstCombinerImpl | |
| ORE | llvm::InstCombiner | protected |
| peekThroughBitcast(Value *V, bool OneUseOnly=false) | llvm::InstCombiner | inlinestatic |
| PHIArgMergedDebugLoc(Instruction *Inst, PHINode &PN) | llvm::InstCombinerImpl | |
| PredOrder | llvm::InstCombiner | protected |
| prepareWorklist(Function &F) | llvm::InstCombinerImpl | |
| PSI | llvm::InstCombiner | protected |
| pushFreezeToPreventPoisonFromPropagating(FreezeInst &FI) | llvm::InstCombinerImpl | |
| reassociateShiftAmtsOfTwoSameDirectionShifts(BinaryOperator *Sh0, const SimplifyQuery &SQ, bool AnalyzeForSignBitExtraction=false) | llvm::InstCombinerImpl | |
| removeInstructionsBeforeUnreachable(Instruction &I) | llvm::InstCombinerImpl | |
| replacedSelectWithOperand(SelectInst *SI, const ICmpInst *Icmp, const unsigned SIOpd) | llvm::InstCombinerImpl | |
| replaceInInstruction(Value *V, Value *Old, Value *New, unsigned Depth=0) | llvm::InstCombinerImpl | |
| replaceInstUsesWith(Instruction &I, Value *V) | llvm::InstCombiner | inline |
| replaceOperand(Instruction &I, unsigned OpNum, Value *V) | llvm::InstCombiner | inline |
| replaceUse(Use &U, Value *NewValue) | llvm::InstCombiner | inline |
| RPOT | llvm::InstCombiner | protected |
| run() | llvm::InstCombinerImpl | |
| shouldAvoidAbsorbingNotIntoSelect(const SelectInst &SI) | llvm::InstCombiner | inlinestatic |
| SimplifyAddWithRemainder(BinaryOperator &I) | llvm::InstCombinerImpl | |
| SimplifyAnyMemSet(AnyMemSetInst *MI) | llvm::InstCombinerImpl | |
| SimplifyAnyMemTransfer(AnyMemTransferInst *MI) | llvm::InstCombinerImpl | |
| SimplifyAssociativeOrCommutative(BinaryOperator &I) | llvm::InstCombinerImpl | |
| simplifyBinOpSplats(ShuffleVectorInst &SVI) | llvm::InstCombinerImpl | |
| SimplifyDemandedBits(Instruction *I, unsigned Op, const APInt &DemandedMask, KnownBits &Known, const SimplifyQuery &Q, unsigned Depth=0) override | llvm::InstCombinerImpl | virtual |
| SimplifyDemandedBits(Instruction *I, unsigned OpNo, const APInt &DemandedMask, KnownBits &Known) | llvm::InstCombinerImpl | inline |
| SimplifyDemandedFPClass(Instruction *I, unsigned Op, FPClassTest DemandedMask, KnownFPClass &Known, unsigned Depth=0) | llvm::InstCombinerImpl | |
| SimplifyDemandedInstructionBits(Instruction &Inst) | llvm::InstCombinerImpl | |
| SimplifyDemandedInstructionBits(Instruction &Inst, KnownBits &Known) | llvm::InstCombinerImpl | |
| SimplifyDemandedUseBits(Instruction *I, const APInt &DemandedMask, KnownBits &Known, const SimplifyQuery &Q, unsigned Depth=0) | llvm::InstCombinerImpl | |
| SimplifyDemandedUseFPClass(Value *V, FPClassTest DemandedMask, KnownFPClass &Known, Instruction *CxtI, unsigned Depth=0) | llvm::InstCombinerImpl | |
| SimplifyDemandedVectorElts(Value *V, APInt DemandedElts, APInt &PoisonElts, unsigned Depth=0, bool AllowMultipleUsers=false) override | llvm::InstCombinerImpl | virtual |
| simplifyDivRemOfSelectWithZeroOp(BinaryOperator &I) | llvm::InstCombinerImpl | |
| SimplifyMultipleUseDemandedBits(Instruction *I, const APInt &DemandedMask, KnownBits &Known, const SimplifyQuery &Q, unsigned Depth=0) | llvm::InstCombinerImpl | |
| simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, bool Inverted) | llvm::InstCombinerImpl | |
| SimplifySelectsFeedingBinaryOp(BinaryOperator &I, Value *LHS, Value *RHS) | llvm::InstCombinerImpl | |
| simplifyShrShlDemandedBits(Instruction *Shr, const APInt &ShrOp1, Instruction *Shl, const APInt &ShlOp1, const APInt &DemandedMask, KnownBits &Known) | llvm::InstCombinerImpl | |
| sinkNotIntoLogicalOp(Instruction &I) | llvm::InstCombinerImpl | |
| sinkNotIntoOtherHandOfLogicalOp(Instruction &I) | llvm::InstCombinerImpl | |
| SliceUpIllegalIntegerPHI(PHINode &PN) | llvm::InstCombinerImpl | |
| SQ | llvm::InstCombiner | protected |
| SubOne(Constant *C) | llvm::InstCombiner | inlinestatic |
| takeLog2(Value *Op, unsigned Depth, bool AssumeNonZero, bool DoFold) | llvm::InstCombinerImpl | |
| targetInstCombineIntrinsic(IntrinsicInst &II) | llvm::InstCombiner | |
| targetSimplifyDemandedUseBitsIntrinsic(IntrinsicInst &II, APInt DemandedMask, KnownBits &Known, bool &KnownBitsComputed) | llvm::InstCombiner | |
| targetSimplifyDemandedVectorEltsIntrinsic(IntrinsicInst &II, APInt DemandedElts, APInt &UndefElts, APInt &UndefElts2, APInt &UndefElts3, std::function< void(Instruction *, unsigned, APInt, APInt &)> SimplifyAndSetOp) | llvm::InstCombiner | |
| TLI | llvm::InstCombiner | protected |
| tryFactorizationFolds(BinaryOperator &I) | llvm::InstCombinerImpl | |
| tryFoldInstWithCtpopWithNot(Instruction *I) | llvm::InstCombinerImpl | |
| tryGetLog2(Value *Op, bool AssumeNonZero) | llvm::InstCombinerImpl | inline |
| tryToSinkInstruction(Instruction *I, BasicBlock *DestBlock) | llvm::InstCombinerImpl | |
| tryToSinkInstructionDbgVariableRecords(Instruction *I, BasicBlock::iterator InsertPos, BasicBlock *SrcBlock, BasicBlock *DestBlock, SmallVectorImpl< DbgVariableRecord * > &DPUsers) | llvm::InstCombinerImpl | |
| unshuffleConstant(ArrayRef< int > ShMask, Constant *C, VectorType *NewCTy) | llvm::InstCombinerImpl | |
| visit(Iterator Start, Iterator End) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitAdd(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitAddrSpaceCast(AddrSpaceCastInst &CI) | llvm::InstCombinerImpl | |
| visitAddrSpaceCastInst(AddrSpaceCastInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitAllocaInst(AllocaInst &AI) | llvm::InstCombinerImpl | |
| visitAllocSite(Instruction &FI) | llvm::InstCombinerImpl | |
| visitAnd(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitAShr(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitAtomicCmpXchgInst(AtomicCmpXchgInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitAtomicRMWInst(AtomicRMWInst &SI) | llvm::InstCombinerImpl | |
| visitBasicBlock(BasicBlock &BB) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitBinaryOperator(BinaryOperator &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitBitCast(BitCastInst &CI) | llvm::InstCombinerImpl | |
| visitBitCastInst(BitCastInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitBranchInst(BranchInst &BI) | llvm::InstCombinerImpl | |
| visitCallBrInst(CallBrInst &CBI) | llvm::InstCombinerImpl | |
| visitCallInst(CallInst &CI) | llvm::InstCombinerImpl | |
| visitCastInst(CastInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitCatchPadInst(CatchPadInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitCatchReturnInst(CatchReturnInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitCatchSwitchInst(CatchSwitchInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitCleanupPadInst(CleanupPadInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitCleanupReturnInst(CleanupReturnInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitCmpInst(CmpInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitExtractElementInst(ExtractElementInst &EI) | llvm::InstCombinerImpl | |
| visitExtractValueInst(ExtractValueInst &EV) | llvm::InstCombinerImpl | |
| visitFAdd(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitFCmpInst(FCmpInst &I) | llvm::InstCombinerImpl | |
| visitFDiv(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitFenceInst(FenceInst &FI) | llvm::InstCombinerImpl | |
| visitFMul(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitFNeg(UnaryOperator &I) | llvm::InstCombinerImpl | |
| visitFPExt(CastInst &CI) | llvm::InstCombinerImpl | |
| visitFPExtInst(FPExtInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitFPToSI(FPToSIInst &FI) | llvm::InstCombinerImpl | |
| visitFPToSIInst(FPToSIInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitFPToUI(FPToUIInst &FI) | llvm::InstCombinerImpl | |
| visitFPToUIInst(FPToUIInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitFPTrunc(FPTruncInst &CI) | llvm::InstCombinerImpl | |
| visitFPTruncInst(FPTruncInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitFree(CallInst &FI, Value *FreedOp) | llvm::InstCombinerImpl | |
| visitFreeze(FreezeInst &I) | llvm::InstCombinerImpl | |
| visitFreezeInst(FreezeInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitFRem(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitFSub(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitFuncletPadInst(FuncletPadInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitFunction(Function &F) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitGEPOfGEP(GetElementPtrInst &GEP, GEPOperator *Src) | llvm::InstCombinerImpl | |
| visitGetElementPtrInst(GetElementPtrInst &GEP) | llvm::InstCombinerImpl | |
| visitICmpInst(ICmpInst &I) | llvm::InstCombinerImpl | |
| visitIndirectBrInst(IndirectBrInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitInsertElementInst(InsertElementInst &IE) | llvm::InstCombinerImpl | |
| visitInsertValueInst(InsertValueInst &IV) | llvm::InstCombinerImpl | |
| visitInstruction(Instruction &I) | llvm::InstCombinerImpl | inline |
| visitIntrinsicInst(IntrinsicInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitIntToPtr(IntToPtrInst &CI) | llvm::InstCombinerImpl | |
| visitIntToPtrInst(IntToPtrInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitInvokeInst(InvokeInst &II) | llvm::InstCombinerImpl | |
| visitLandingPadInst(LandingPadInst &LI) | llvm::InstCombinerImpl | |
| visitLoadInst(LoadInst &LI) | llvm::InstCombinerImpl | |
| visitLShr(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitMemCpyInst(MemCpyInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitMemIntrinsic(MemIntrinsic &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitMemMoveInst(MemMoveInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitMemSetInst(MemSetInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitMemSetPatternInst(MemSetPatternInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitMemTransferInst(MemTransferInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitModule(Module &M) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitMul(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitOr(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitPHINode(PHINode &PN) | llvm::InstCombinerImpl | |
| visitPtrToAddr(PtrToAddrInst &CI) | llvm::InstCombinerImpl | |
| visitPtrToAddrInst(PtrToAddrInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitPtrToInt(PtrToIntInst &CI) | llvm::InstCombinerImpl | |
| visitPtrToIntInst(PtrToIntInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitResumeInst(ResumeInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitReturnInst(ReturnInst &RI) | llvm::InstCombinerImpl | |
| visitSDiv(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitSelectInst(SelectInst &SI) | llvm::InstCombinerImpl | |
| visitSExt(SExtInst &Sext) | llvm::InstCombinerImpl | |
| visitSExtInst(SExtInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitShl(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitShuffleVectorInst(ShuffleVectorInst &SVI) | llvm::InstCombinerImpl | |
| visitSIToFP(CastInst &CI) | llvm::InstCombinerImpl | |
| visitSIToFPInst(SIToFPInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitSRem(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitStoreInst(StoreInst &SI) | llvm::InstCombinerImpl | |
| visitSub(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitSwitchInst(SwitchInst &SI) | llvm::InstCombinerImpl | |
| visitTerminator(Instruction &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitTrunc(TruncInst &CI) | llvm::InstCombinerImpl | |
| visitTruncInst(TruncInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitUDiv(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitUIToFP(CastInst &CI) | llvm::InstCombinerImpl | |
| visitUIToFPInst(UIToFPInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitUnaryInstruction(UnaryInstruction &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitUnaryOperator(UnaryOperator &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitUnconditionalBranchInst(BranchInst &BI) | llvm::InstCombinerImpl | |
| visitUnreachableInst(UnreachableInst &I) | llvm::InstCombinerImpl | |
| visitURem(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitVAArgInst(VAArgInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitVACopyInst(VACopyInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitVAEndInst(VAEndInst &I) | llvm::InstCombinerImpl | |
| visitVAStartInst(VAStartInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| visitXor(BinaryOperator &I) | llvm::InstCombinerImpl | |
| visitZExt(ZExtInst &Zext) | llvm::InstCombinerImpl | |
| visitZExtInst(ZExtInst &I) | llvm::InstVisitor< InstCombinerImpl, Instruction * > | inline |
| Worklist | llvm::InstCombiner | protected |
| ~InstCombiner()=default | llvm::InstCombiner | virtual |
| ~InstCombinerImpl() override=default | llvm::InstCombinerImpl | |