LLVM  6.0.0svn
Namespaces | Functions | Variables
Loads.h File Reference
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/Support/CommandLine.h"
Include dependency graph for Loads.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 llvm
 Compute iterated dominance frontiers using a linear time algorithm.
 

Functions

bool llvm::isDereferenceablePointer (const Value *V, const DataLayout &DL, const Instruction *CtxI=nullptr, const DominatorTree *DT=nullptr)
 Return true if this is always a dereferenceable pointer. More...
 
bool llvm::isDereferenceableAndAlignedPointer (const Value *V, unsigned Align, const DataLayout &DL, const Instruction *CtxI=nullptr, const DominatorTree *DT=nullptr)
 Returns true if V is always a dereferenceable pointer with alignment greater or equal than requested. More...
 
bool llvm::isDereferenceableAndAlignedPointer (const Value *V, unsigned Align, const APInt &Size, const DataLayout &DL, const Instruction *CtxI=nullptr, const DominatorTree *DT=nullptr)
 Returns true if V is always dereferenceable for Size byte with alignment greater or equal than requested. More...
 
bool llvm::isSafeToLoadUnconditionally (Value *V, unsigned Align, const DataLayout &DL, Instruction *ScanFrom=nullptr, const DominatorTree *DT=nullptr)
 Return true if we know that executing a load from this value cannot trap. More...
 
Valuellvm::FindAvailableLoadedValue (LoadInst *Load, BasicBlock *ScanBB, BasicBlock::iterator &ScanFrom, unsigned MaxInstsToScan=DefMaxInstsToScan, AliasAnalysis *AA=nullptr, bool *IsLoadCSE=nullptr, unsigned *NumScanedInst=nullptr)
 Scan backwards to see if we have the value of the given load available locally within a small number of instructions. More...
 
Valuellvm::FindAvailablePtrLoadStore (Value *Ptr, Type *AccessTy, bool AtLeastAtomic, BasicBlock *ScanBB, BasicBlock::iterator &ScanFrom, unsigned MaxInstsToScan, AliasAnalysis *AA, bool *IsLoad, unsigned *NumScanedInst)
 Scan backwards to see if we have the value of the given pointer available locally within a small number of instructions. More...
 

Variables

cl::opt< unsignedllvm::DefMaxInstsToScan
 The default number of maximum instructions to scan in the block, used by FindAvailableLoadedValue(). More...