ΒΆbool isDereferenceableAndAlignedInLoop(
llvm::LoadInst* LI,
llvm::Loop* L,
llvm::ScalarEvolution& SE,
llvm::DominatorTree& DT)
bool isDereferenceableAndAlignedInLoop(
llvm::LoadInst* LI,
llvm::Loop* L,
llvm::ScalarEvolution& SE,
llvm::DominatorTree& DT)
Description
Return true if we can prove that the given load (which is assumed to be within the specified loop) would access only dereferenceable memory, and be properly aligned on every iteration of the specified loop regardless of its placement within the loop. (i.e. does not require predication beyond that required by the the header itself and could be hoisted into the header if desired.) This is more powerful than the variants above when the address loaded from is analyzeable by SCEV.
Declared at: llvm/include/llvm/Analysis/Loads.h:74