18 #ifndef LLVM_TRANSFORMS_SCALAR_ALIGNMENTFROMASSUMPTIONS_H
19 #define LLVM_TRANSFORMS_SCALAR_ALIGNMENTFROMASSUMPTIONS_H
46 const SCEV *&OffSCEV);
51 #endif // LLVM_TRANSFORMS_SCALAR_ALIGNMENTFROMASSUMPTIONS_H
DenseMap< MemTransferInst *, unsigned > NewSrcAlignments
The main scalar evolution driver.
This class represents a function call, abstracting a target machine's calling convention.
A cache of .assume calls within a function.
DenseMap< MemTransferInst *, unsigned > NewDestAlignments
A CRTP mix-in to automatically provide informational APIs needed for passes.
Concrete subclass of DominatorTreeBase that is used to compute a normal dominator tree...
PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM)
A set of analyses that are preserved following a run of a transformation pass.
bool extractAlignmentInfo(CallInst *I, Value *&AAPtr, const SCEV *&AlignSCEV, const SCEV *&OffSCEV)
bool processAssumption(CallInst *I)
This class represents an analyzed expression in the program.
LLVM Value Representation.
bool runImpl(Function &F, AssumptionCache &AC, ScalarEvolution *SE_, DominatorTree *DT_)
A container for analyses that lazily runs them and caches their results.
This header defines various interfaces for pass management in LLVM.