diff options
author | Dan Gohman <gohman@apple.com> | 2010-11-10 01:02:18 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-11-10 01:02:18 +0000 |
commit | 42c31a70735e55bf82e66a9315c97d1821c9a798 (patch) | |
tree | 4a2913df4ad61547376e9facded78b679229e473 /lib/Analysis/TypeBasedAliasAnalysis.cpp | |
parent | cc8d10e1a8a8555fa63f33e36e3c1ed2fb24389d (diff) |
Make ModRefBehavior a lattice. Use this to clean up AliasAnalysis
chaining and simplify FunctionAttrs' GetModRefBehavior logic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118660 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/TypeBasedAliasAnalysis.cpp')
-rw-r--r-- | lib/Analysis/TypeBasedAliasAnalysis.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Analysis/TypeBasedAliasAnalysis.cpp b/lib/Analysis/TypeBasedAliasAnalysis.cpp index 16ff64e4cf..46c9aa95a9 100644 --- a/lib/Analysis/TypeBasedAliasAnalysis.cpp +++ b/lib/Analysis/TypeBasedAliasAnalysis.cpp @@ -256,11 +256,12 @@ TypeBasedAliasAnalysis::getModRefBehavior(ImmutableCallSite CS) { if (TBAANode(M).TypeIsImmutable()) Min = OnlyReadsMemory; - return std::min(AliasAnalysis::getModRefBehavior(CS), Min); + return ModRefBehavior(AliasAnalysis::getModRefBehavior(CS) & Min); } AliasAnalysis::ModRefBehavior TypeBasedAliasAnalysis::getModRefBehavior(const Function *F) { + // Functions don't have metadata. Just chain to the next implementation. return AliasAnalysis::getModRefBehavior(F); } |