Builder | llvm::InstCombiner | |
BuilderTy typedef | llvm::InstCombiner | |
commonCastTransforms(CastInst &CI) | llvm::InstCombiner | |
commonDivTransforms(BinaryOperator &I) | llvm::InstCombiner | |
commonIDivTransforms(BinaryOperator &I) | llvm::InstCombiner | |
commonIRemTransforms(BinaryOperator &I) | llvm::InstCombiner | |
commonPointerCastTransforms(CastInst &CI) | llvm::InstCombiner | |
commonRemTransforms(BinaryOperator &I) | llvm::InstCombiner | |
commonShiftTransforms(BinaryOperator &I) | llvm::InstCombiner | |
computeKnownBits(const Value *V, KnownBits &Known, unsigned Depth, const Instruction *CxtI) const | llvm::InstCombiner | inline |
computeKnownBits(const Value *V, unsigned Depth, const Instruction *CxtI) const | llvm::InstCombiner | inline |
ComputeNumSignBits(const Value *Op, unsigned Depth=0, const Instruction *CxtI=nullptr) const | llvm::InstCombiner | inline |
computeOverflowForSignedAdd(const Value *LHS, 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 Value *LHS, const Value *RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
computeOverflowForUnsignedMul(const Value *LHS, const Value *RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
computeOverflowForUnsignedSub(const Value *LHS, const Value *RHS, const Instruction *CxtI) const | llvm::InstCombiner | inline |
CreateOverflowTuple(IntrinsicInst *II, Value *Result, Constant *Overflow) | llvm::InstCombiner | inline |
dominatesAllUses(const Instruction *DI, const Instruction *UI, const BasicBlock *DB) const | llvm::InstCombiner | |
eraseInstFromFunction(Instruction &I) | llvm::InstCombiner | inline |
FoldItoFPtoI(Instruction &FI) | llvm::InstCombiner | |
FoldShiftByConstant(Value *Op0, Constant *Op1, BinaryOperator &I) | llvm::InstCombiner | |
getAssumptionCache() const | llvm::InstCombiner | inline |
getDataLayout() const | llvm::InstCombiner | inline |
getDominatorTree() const | llvm::InstCombiner | inline |
getLoopInfo() const | llvm::InstCombiner | inline |
getTargetLibraryInfo() const | llvm::InstCombiner | inline |
InsertNewInstBefore(Instruction *New, Instruction &Old) | llvm::InstCombiner | inline |
InsertNewInstWith(Instruction *New, Instruction &Old) | llvm::InstCombiner | inline |
InstCombiner(InstCombineWorklist &Worklist, BuilderTy &Builder, bool MinimizeSize, bool ExpensiveCombines, AliasAnalysis *AA, AssumptionCache &AC, TargetLibraryInfo &TLI, DominatorTree &DT, OptimizationRemarkEmitter &ORE, const DataLayout &DL, LoopInfo *LI) | llvm::InstCombiner | inline |
isKnownToBeAPowerOfTwo(const Value *V, bool OrZero=false, unsigned Depth=0, const Instruction *CxtI=nullptr) | llvm::InstCombiner | inline |
MaskedValueIsZero(const Value *V, const APInt &Mask, unsigned Depth=0, const Instruction *CxtI=nullptr) const | llvm::InstCombiner | inline |
MaxArraySizeForCombine | llvm::InstCombiner | |
OptimizePointerDifference(Value *LHS, Value *RHS, Type *Ty) | llvm::InstCombiner | |
replacedSelectWithOperand(SelectInst *SI, const ICmpInst *Icmp, const unsigned SIOpd) | llvm::InstCombiner | |
replaceInstUsesWith(Instruction &I, Value *V) | llvm::InstCombiner | inline |
replacePointer(Instruction &I, Value *V) | llvm::InstCombiner | |
run() | llvm::InstCombiner | |
simplifyDivRemOfSelectWithZeroOp(BinaryOperator &I) | llvm::InstCombiner | |
simplifyRangeCheck(ICmpInst *Cmp0, ICmpInst *Cmp1, bool Inverted) | llvm::InstCombiner | |
SliceUpIllegalIntegerPHI(PHINode &PN) | llvm::InstCombiner | |
visit(Iterator Start, Iterator End) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(Module &M) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(Function &F) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(BasicBlock &BB) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(Module *M) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(Function *F) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(BasicBlock *BB) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(Instruction *I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visit(Instruction &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitAdd(BinaryOperator &I) | llvm::InstCombiner | |
visitAddrSpaceCast(AddrSpaceCastInst &CI) | llvm::InstCombiner | |
visitAddrSpaceCastInst(AddrSpaceCastInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitAllocaInst(AllocaInst &AI) | llvm::InstCombiner | |
visitAllocSite(Instruction &FI) | llvm::InstCombiner | |
visitAnd(BinaryOperator &I) | llvm::InstCombiner | |
visitAShr(BinaryOperator &I) | llvm::InstCombiner | |
visitAtomicCmpXchgInst(AtomicCmpXchgInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitAtomicRMWInst(AtomicRMWInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitBasicBlock(BasicBlock &BB) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitBinaryOperator(BinaryOperator &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitBitCast(BitCastInst &CI) | llvm::InstCombiner | |
visitBitCastInst(BitCastInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitBranchInst(BranchInst &BI) | llvm::InstCombiner | |
visitCallBase(CallBase &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitCallInst(CallInst &CI) | llvm::InstCombiner | |
visitCastInst(CastInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitCatchPadInst(CatchPadInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitCatchReturnInst(CatchReturnInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitCatchSwitchInst(CatchSwitchInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitCleanupPadInst(CleanupPadInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitCleanupReturnInst(CleanupReturnInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitCmpInst(CmpInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitDbgDeclareInst(DbgDeclareInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitDbgInfoIntrinsic(DbgInfoIntrinsic &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitDbgLabelInst(DbgLabelInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitDbgValueInst(DbgValueInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitDbgVariableIntrinsic(DbgVariableIntrinsic &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitExtractElementInst(ExtractElementInst &EI) | llvm::InstCombiner | |
visitExtractValueInst(ExtractValueInst &EV) | llvm::InstCombiner | |
visitFAdd(BinaryOperator &I) | llvm::InstCombiner | |
visitFCmpInst(FCmpInst &I) | llvm::InstCombiner | |
visitFDiv(BinaryOperator &I) | llvm::InstCombiner | |
visitFenceInst(FenceInst &FI) | llvm::InstCombiner | |
visitFMul(BinaryOperator &I) | llvm::InstCombiner | |
visitFPExt(CastInst &CI) | llvm::InstCombiner | |
visitFPExtInst(FPExtInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitFPToSI(FPToSIInst &FI) | llvm::InstCombiner | |
visitFPToSIInst(FPToSIInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitFPToUI(FPToUIInst &FI) | llvm::InstCombiner | |
visitFPToUIInst(FPToUIInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitFPTrunc(FPTruncInst &CI) | llvm::InstCombiner | |
visitFPTruncInst(FPTruncInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitFree(CallInst &FI) | llvm::InstCombiner | |
visitFRem(BinaryOperator &I) | llvm::InstCombiner | |
visitFSub(BinaryOperator &I) | llvm::InstCombiner | |
visitFuncletPadInst(FuncletPadInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitFunction(Function &F) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitGetElementPtrInst(GetElementPtrInst &GEP) | llvm::InstCombiner | |
visitICmpInst(ICmpInst &I) | llvm::InstCombiner | |
visitIndirectBrInst(IndirectBrInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitInsertElementInst(InsertElementInst &IE) | llvm::InstCombiner | |
visitInsertValueInst(InsertValueInst &IV) | llvm::InstCombiner | |
visitInstruction(Instruction &I) | llvm::InstCombiner | inline |
visitIntrinsicInst(IntrinsicInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitIntToPtr(IntToPtrInst &CI) | llvm::InstCombiner | |
visitIntToPtrInst(IntToPtrInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitInvokeInst(InvokeInst &II) | llvm::InstCombiner | |
visitLandingPadInst(LandingPadInst &LI) | llvm::InstCombiner | |
visitLoadInst(LoadInst &LI) | llvm::InstCombiner | |
visitLShr(BinaryOperator &I) | llvm::InstCombiner | |
visitMemCpyInst(MemCpyInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitMemIntrinsic(MemIntrinsic &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitMemMoveInst(MemMoveInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitMemSetInst(MemSetInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitMemTransferInst(MemTransferInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitModule(Module &M) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitMul(BinaryOperator &I) | llvm::InstCombiner | |
visitOr(BinaryOperator &I) | llvm::InstCombiner | |
visitPHINode(PHINode &PN) | llvm::InstCombiner | |
visitPtrToInt(PtrToIntInst &CI) | llvm::InstCombiner | |
visitPtrToIntInst(PtrToIntInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitResumeInst(ResumeInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitReturnInst(ReturnInst &RI) | llvm::InstCombiner | |
visitSDiv(BinaryOperator &I) | llvm::InstCombiner | |
visitSelectInst(SelectInst &SI) | llvm::InstCombiner | |
visitSExt(SExtInst &CI) | llvm::InstCombiner | |
visitSExtInst(SExtInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitShl(BinaryOperator &I) | llvm::InstCombiner | |
visitShuffleVectorInst(ShuffleVectorInst &SVI) | llvm::InstCombiner | |
visitSIToFP(CastInst &CI) | llvm::InstCombiner | |
visitSIToFPInst(SIToFPInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitSRem(BinaryOperator &I) | llvm::InstCombiner | |
visitStoreInst(StoreInst &SI) | llvm::InstCombiner | |
visitSub(BinaryOperator &I) | llvm::InstCombiner | |
visitSwitchInst(SwitchInst &SI) | llvm::InstCombiner | |
visitTerminator(Instruction &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitTrunc(TruncInst &CI) | llvm::InstCombiner | |
visitTruncInst(TruncInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitUDiv(BinaryOperator &I) | llvm::InstCombiner | |
visitUIToFP(CastInst &CI) | llvm::InstCombiner | |
visitUIToFPInst(UIToFPInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitUnaryInstruction(UnaryInstruction &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitUnaryOperator(UnaryOperator &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitUnreachableInst(UnreachableInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitURem(BinaryOperator &I) | llvm::InstCombiner | |
visitVAArgInst(VAArgInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitVACopyInst(VACopyInst &I) | llvm::InstCombiner | |
visitVAEndInst(VAEndInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
visitVAStartInst(VAStartInst &I) | llvm::InstCombiner | |
visitXor(BinaryOperator &I) | llvm::InstCombiner | |
visitZExt(ZExtInst &CI) | llvm::InstCombiner | |
visitZExtInst(ZExtInst &I) | llvm::InstVisitor< InstCombiner, Instruction *> | inline |
Worklist | llvm::InstCombiner | |