summaryrefslogtreecommitdiff
path: root/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-08-29 23:36:57 +0000
committerDan Gohman <gohman@apple.com>2009-08-29 23:36:57 +0000
commited77e52dd972ada58608f5540d3d0d434899114e (patch)
tree9ca3b2194380c5079d2fbd44c4cd29390fbdeeac /lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
parentf8a87e8343c5f829be9a75d8160e1bb969b84119 (diff)
downloadllvm-ed77e52dd972ada58608f5540d3d0d434899114e.tar.gz
llvm-ed77e52dd972ada58608f5540d3d0d434899114e.tar.bz2
llvm-ed77e52dd972ada58608f5540d3d0d434899114e.tar.xz
Add some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80452 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/ScalarEvolutionAliasAnalysis.cpp')
-rw-r--r--lib/Analysis/ScalarEvolutionAliasAnalysis.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp b/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
index 381ea20486..cc79e6c3b1 100644
--- a/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
+++ b/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp
@@ -69,9 +69,14 @@ ScalarEvolutionAliasAnalysis::runOnFunction(Function &F) {
return false;
}
+/// GetUnderlyingIdentifiedObject - Given an expression, try to find an
+/// "identified object" (see AliasAnalysis::isIdentifiedObject) base
+/// value. Return null is none was found.
Value *
ScalarEvolutionAliasAnalysis::GetUnderlyingIdentifiedObject(const SCEV *S) {
if (const SCEVAddRecExpr *AR = dyn_cast<SCEVAddRecExpr>(S)) {
+ // In an addrec, assume that the base will be in the start, rather
+ // than the step.
return GetUnderlyingIdentifiedObject(AR->getStart());
} else if (const SCEVAddExpr *A = dyn_cast<SCEVAddExpr>(S)) {
// If there's a pointer operand, it'll be sorted at the end of the list.