LLVM  13.0.0git
Classes | Namespaces | Functions
AssumeBundleBuilder.h File Reference
#include "llvm/Analysis/AssumeBundleQueries.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/PassManager.h"
Include dependency graph for AssumeBundleBuilder.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


struct  llvm::AssumeSimplifyPass
 This pass attempts to minimize the number of assume without loosing any information. More...
struct  llvm::AssumeBuilderPass
 This pass will try to build an llvm.assume for every instruction in the function. More...




AssumeInstllvm::buildAssumeFromInst (Instruction *I)
 Build a call to llvm.assume to preserve informations that can be derived from the given instruction. More...
void llvm::salvageKnowledge (Instruction *I, AssumptionCache *AC=nullptr, DominatorTree *DT=nullptr)
 Calls BuildAssumeFromInst and if the resulting llvm.assume is valid insert if before I. More...
AssumeInstllvm::buildAssumeFromKnowledge (ArrayRef< RetainedKnowledge > Knowledge, Instruction *CtxI, AssumptionCache *AC=nullptr, DominatorTree *DT=nullptr)
 Build and return a new assume created from the provided knowledge if the knowledge in the assume is fully redundant this will return nullptr. More...
FunctionPassllvm::createAssumeSimplifyPass ()
RetainedKnowledge llvm::simplifyRetainedKnowledge (AssumeInst *Assume, RetainedKnowledge RK, AssumptionCache *AC, DominatorTree *DT)
 canonicalize the RetainedKnowledge RK. More...