diff options
author | Dan Gohman <gohman@apple.com> | 2010-09-09 18:37:31 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-09-09 18:37:31 +0000 |
commit | c8ddbdabb697b20b948c1a56af6062f26691532a (patch) | |
tree | 5d824f38bab1ab4ea837b4fbac39c8023cffc53e /lib/Analysis/BasicAliasAnalysis.cpp | |
parent | e744541788298d0ef129aa2d38e9aef865218311 (diff) | |
download | external_llvm-c8ddbdabb697b20b948c1a56af6062f26691532a.zip external_llvm-c8ddbdabb697b20b948c1a56af6062f26691532a.tar.gz external_llvm-c8ddbdabb697b20b948c1a56af6062f26691532a.tar.bz2 |
Extend the getDependence query with support for PHI translation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113521 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/BasicAliasAnalysis.cpp')
-rw-r--r-- | lib/Analysis/BasicAliasAnalysis.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/Analysis/BasicAliasAnalysis.cpp b/lib/Analysis/BasicAliasAnalysis.cpp index 597e34b..354e66d 100644 --- a/lib/Analysis/BasicAliasAnalysis.cpp +++ b/lib/Analysis/BasicAliasAnalysis.cpp @@ -172,8 +172,10 @@ namespace { } virtual DependenceResult getDependence(const Instruction *First, + const Value *FirstPHITranslatedAddr, DependenceQueryFlags FirstFlags, const Instruction *Second, + const Value *SecondPHITranslatedAddr, DependenceQueryFlags SecondFlags) { return Unknown; } @@ -531,8 +533,10 @@ namespace { virtual ModRefBehavior getModRefBehavior(const Function *F); virtual DependenceResult getDependence(const Instruction *First, + const Value *FirstPHITranslatedAddr, DependenceQueryFlags FirstFlags, const Instruction *Second, + const Value *SecondPHITranslatedAddr, DependenceQueryFlags SecondFlags); /// getAdjustedAnalysisPointer - This method is used when a pass implements @@ -748,11 +752,14 @@ BasicAliasAnalysis::getModRefInfo(ImmutableCallSite CS, AliasAnalysis::DependenceResult BasicAliasAnalysis::getDependence(const Instruction *First, + const Value *FirstPHITranslatedAddr, DependenceQueryFlags FirstFlags, const Instruction *Second, + const Value *SecondPHITranslatedAddr, DependenceQueryFlags SecondFlags) { // We don't have anything special to say yet. - return getDependenceViaModRefInfo(First, FirstFlags, Second, SecondFlags); + return getDependenceViaModRefInfo(First, FirstPHITranslatedAddr, FirstFlags, + Second, SecondPHITranslatedAddr, SecondFlags); } /// aliasGEP - Provide a bunch of ad-hoc rules to disambiguate a GEP instruction |