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 | 1c5be00ec77b73e1423cbc686ca5cb7e6f7577f9 (patch) | |
tree | 25ce87d11186a5ce023fdbe1aaa8705919efafc3 /llvm/lib/Analysis/BasicAliasAnalysis.cpp | |
parent | 19d19c525ce0bc34b2f360ea1068d19dbfacd745 (diff) | |
download | bcm5719-llvm-1c5be00ec77b73e1423cbc686ca5cb7e6f7577f9.tar.gz bcm5719-llvm-1c5be00ec77b73e1423cbc686ca5cb7e6f7577f9.zip |
Extend the getDependence query with support for PHI translation.
llvm-svn: 113521
Diffstat (limited to 'llvm/lib/Analysis/BasicAliasAnalysis.cpp')
-rw-r--r-- | llvm/lib/Analysis/BasicAliasAnalysis.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/BasicAliasAnalysis.cpp b/llvm/lib/Analysis/BasicAliasAnalysis.cpp index 597e34b55eb..354e66df0c0 100644 --- a/llvm/lib/Analysis/BasicAliasAnalysis.cpp +++ b/llvm/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 |