summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/NoAliasAnalysis.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-11-08 16:45:26 +0000
committerDan Gohman <gohman@apple.com>2010-11-08 16:45:26 +0000
commit9130bad71fb80ad6174c23fd073cadff8223d168 (patch)
tree8404e603658ba45d23dcf149cc872d65718f788a /llvm/lib/Analysis/NoAliasAnalysis.cpp
parent0b56778d65717534b118742d56deb67306b52b9d (diff)
downloadbcm5719-llvm-9130bad71fb80ad6174c23fd073cadff8223d168.tar.gz
bcm5719-llvm-9130bad71fb80ad6174c23fd073cadff8223d168.zip
Extend the AliasAnalysis::pointsToConstantMemory interface to allow it
to optionally look for constant or local (alloca) memory. Teach BasicAliasAnalysis::pointsToConstantMemory to look through Select and Phi nodes, and to support looking for local memory. Remove FunctionAttrs' PointsToLocalOrConstantMemory function, now that AliasAnalysis knows all the tricks that it knew. llvm-svn: 118412
Diffstat (limited to 'llvm/lib/Analysis/NoAliasAnalysis.cpp')
-rw-r--r--llvm/lib/Analysis/NoAliasAnalysis.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/NoAliasAnalysis.cpp b/llvm/lib/Analysis/NoAliasAnalysis.cpp
index 7602149edc0..ab7a69241e9 100644
--- a/llvm/lib/Analysis/NoAliasAnalysis.cpp
+++ b/llvm/lib/Analysis/NoAliasAnalysis.cpp
@@ -50,7 +50,10 @@ namespace {
return UnknownModRefBehavior;
}
- virtual bool pointsToConstantMemory(const Location &Loc) { return false; }
+ virtual bool pointsToConstantMemory(const Location &Loc,
+ bool OrLocal) {
+ return false;
+ }
virtual ModRefResult getModRefInfo(ImmutableCallSite CS,
const Location &Loc) {
return ModRef;
OpenPOWER on IntegriCloud