summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/IPA/GlobalsModRef.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2015-07-11 04:39:00 +0000
committerChandler Carruth <chandlerc@gmail.com>2015-07-11 04:39:00 +0000
commit00ebdbcc47bd94a99a922e3d51490c4391518e75 (patch)
tree2288b82d704f2035baa56d0b243e8b4e914a67b2 /llvm/lib/Analysis/IPA/GlobalsModRef.cpp
parentb7a1176eed41bb13aea468e6ec443d5e18d5db67 (diff)
downloadbcm5719-llvm-00ebdbcc47bd94a99a922e3d51490c4391518e75.tar.gz
bcm5719-llvm-00ebdbcc47bd94a99a922e3d51490c4391518e75.zip
[PM/AA] Completely remove the AliasAnalysis::copyValue interface.
No in-tree alias analysis used this facility, and it was not called in any particularly rigorous way, so it seems unlikely to be correct. Note that one of the only stateful AA implementations in-tree, GlobalsModRef is completely broken currently (and any AA passes like it are equally broken) because Module AA passes are not effectively invalidated when a function pass that fails to update the AA stack runs. Ultimately, it doesn't seem like we know how we want to build stateful AA, and until then trying to support and maintain correctness for an untested API is essentially impossible. To that end, I'm planning to rip out all of the update API. It can return if and when we need it and know how to build it on top of the new pass manager and as part of *tested* stateful AA implementations in the tree. Differential Revision: http://reviews.llvm.org/D10889 llvm-svn: 241975
Diffstat (limited to 'llvm/lib/Analysis/IPA/GlobalsModRef.cpp')
-rw-r--r--llvm/lib/Analysis/IPA/GlobalsModRef.cpp5
1 files changed, 0 insertions, 5 deletions
diff --git a/llvm/lib/Analysis/IPA/GlobalsModRef.cpp b/llvm/lib/Analysis/IPA/GlobalsModRef.cpp
index f1ddde25292..8e6e89d0a82 100644
--- a/llvm/lib/Analysis/IPA/GlobalsModRef.cpp
+++ b/llvm/lib/Analysis/IPA/GlobalsModRef.cpp
@@ -158,7 +158,6 @@ namespace {
}
void deleteValue(Value *V) override;
- void copyValue(Value *From, Value *To) override;
void addEscapingUse(Use &U) override;
/// getAdjustedAnalysisPointer - This method is used when a pass implements
@@ -585,10 +584,6 @@ void GlobalsModRef::deleteValue(Value *V) {
AliasAnalysis::deleteValue(V);
}
-void GlobalsModRef::copyValue(Value *From, Value *To) {
- AliasAnalysis::copyValue(From, To);
-}
-
void GlobalsModRef::addEscapingUse(Use &U) {
// For the purposes of this analysis, it is conservatively correct to treat
// a newly escaping value equivalently to a deleted one. We could perhaps
OpenPOWER on IntegriCloud