forked from OSchip/llvm-project
[LAA] Rename "isStridedPtr" with "getPtrStride". NFC.
Changing misleading function name was approved in http://reviews.llvm.org/D17268. Patch by Roman Shirokiy. llvm-svn: 269021
This commit is contained in:
parent
11e87cc945
commit
15d1e64b2b
|
@ -662,7 +662,7 @@ const SCEV *replaceSymbolicStrideSCEV(PredicatedScalarEvolution &PSE,
|
|||
/// to \p PtrToStride and therefore add further predicates to \p PSE.
|
||||
/// The \p Assume parameter indicates if we are allowed to make additional
|
||||
/// run-time assumptions.
|
||||
int isStridedPtr(PredicatedScalarEvolution &PSE, Value *Ptr, const Loop *Lp,
|
||||
int getPtrStride(PredicatedScalarEvolution &PSE, Value *Ptr, const Loop *Lp,
|
||||
const ValueToValueMap &StridesMap = ValueToValueMap(),
|
||||
bool Assume = false);
|
||||
|
||||
|
|
|
@ -583,7 +583,7 @@ bool AccessAnalysis::canCheckPtrAtRT(RuntimePointerChecking &RtCheck,
|
|||
// When we run after a failing dependency check we have to make sure
|
||||
// we don't have wrapping pointers.
|
||||
(!ShouldCheckStride ||
|
||||
isStridedPtr(PSE, Ptr, TheLoop, StridesMap) == 1)) {
|
||||
getPtrStride(PSE, Ptr, TheLoop, StridesMap) == 1)) {
|
||||
// The id of the dependence set.
|
||||
unsigned DepId;
|
||||
|
||||
|
@ -832,7 +832,7 @@ static bool isNoWrapAddRec(Value *Ptr, const SCEVAddRecExpr *AR,
|
|||
}
|
||||
|
||||
/// \brief Check whether the access through \p Ptr has a constant stride.
|
||||
int llvm::isStridedPtr(PredicatedScalarEvolution &PSE, Value *Ptr,
|
||||
int llvm::getPtrStride(PredicatedScalarEvolution &PSE, Value *Ptr,
|
||||
const Loop *Lp, const ValueToValueMap &StridesMap,
|
||||
bool Assume) {
|
||||
Type *Ty = Ptr->getType();
|
||||
|
@ -1161,8 +1161,8 @@ MemoryDepChecker::isDependent(const MemAccessInfo &A, unsigned AIdx,
|
|||
const SCEV *AScev = replaceSymbolicStrideSCEV(PSE, Strides, APtr);
|
||||
const SCEV *BScev = replaceSymbolicStrideSCEV(PSE, Strides, BPtr);
|
||||
|
||||
int StrideAPtr = isStridedPtr(PSE, APtr, InnermostLoop, Strides, true);
|
||||
int StrideBPtr = isStridedPtr(PSE, BPtr, InnermostLoop, Strides, true);
|
||||
int StrideAPtr = getPtrStride(PSE, APtr, InnermostLoop, Strides, true);
|
||||
int StrideBPtr = getPtrStride(PSE, BPtr, InnermostLoop, Strides, true);
|
||||
|
||||
const SCEV *Src = AScev;
|
||||
const SCEV *Sink = BScev;
|
||||
|
@ -1615,7 +1615,7 @@ void LoopAccessInfo::analyzeLoop(const ValueToValueMap &Strides) {
|
|||
// read a few words, modify, and write a few words, and some of the
|
||||
// words may be written to the same address.
|
||||
bool IsReadOnlyPtr = false;
|
||||
if (Seen.insert(Ptr).second || !isStridedPtr(PSE, Ptr, TheLoop, Strides)) {
|
||||
if (Seen.insert(Ptr).second || !getPtrStride(PSE, Ptr, TheLoop, Strides)) {
|
||||
++NumReads;
|
||||
IsReadOnlyPtr = true;
|
||||
}
|
||||
|
|
|
@ -77,8 +77,8 @@ struct StoreToLoadForwardingCandidate {
|
|||
// Currently we only support accesses with unit stride. FIXME: we should be
|
||||
// able to handle non unit stirde as well as long as the stride is equal to
|
||||
// the dependence distance.
|
||||
if (isStridedPtr(PSE, LoadPtr, L) != 1 ||
|
||||
isStridedPtr(PSE, StorePtr, L) != 1)
|
||||
if (getPtrStride(PSE, LoadPtr, L) != 1 ||
|
||||
getPtrStride(PSE, StorePtr, L) != 1)
|
||||
return false;
|
||||
|
||||
auto &DL = Load->getParent()->getModule()->getDataLayout();
|
||||
|
|
|
@ -4996,7 +4996,7 @@ void InterleavedAccessInfo::collectConstStridedAccesses(
|
|||
StoreInst *SI = dyn_cast<StoreInst>(I);
|
||||
|
||||
Value *Ptr = LI ? LI->getPointerOperand() : SI->getPointerOperand();
|
||||
int Stride = isStridedPtr(PSE, Ptr, TheLoop, Strides);
|
||||
int Stride = getPtrStride(PSE, Ptr, TheLoop, Strides);
|
||||
|
||||
// The factor of the corresponding interleave group.
|
||||
unsigned Factor = std::abs(Stride);
|
||||
|
|
Loading…
Reference in New Issue