summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/AliasAnalysis.cpp
diff options
context:
space:
mode:
authorGeorge Burgess IV <george.burgess.iv@gmail.com>2018-06-14 19:55:53 +0000
committerGeorge Burgess IV <george.burgess.iv@gmail.com>2018-06-14 19:55:53 +0000
commitaa283d80fe7aaa9460e510f20a732f9fbff69ac4 (patch)
tree6e98abb444fed226d46bfae97eed66259bd6747a /llvm/lib/Analysis/AliasAnalysis.cpp
parentf85ca6abee7351aa5d059d7ec241e1ac016c59fb (diff)
downloadbcm5719-llvm-aa283d80fe7aaa9460e510f20a732f9fbff69ac4.tar.gz
bcm5719-llvm-aa283d80fe7aaa9460e510f20a732f9fbff69ac4.zip
[MSSA] Print more optimization information
In particular, when asked to print a MemoryAccess, we'll now print where defs are optimized to, and we'll print optimized access types. This patch also introduces an operator<< to make printing AliasResults easier. Patch by Juneyoung Lee! Differential Revision: https://reviews.llvm.org/D47860 llvm-svn: 334760
Diffstat (limited to 'llvm/lib/Analysis/AliasAnalysis.cpp')
-rw-r--r--llvm/lib/Analysis/AliasAnalysis.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/llvm/lib/Analysis/AliasAnalysis.cpp b/llvm/lib/Analysis/AliasAnalysis.cpp
index a499a6e6413..a6585df949f 100644
--- a/llvm/lib/Analysis/AliasAnalysis.cpp
+++ b/llvm/lib/Analysis/AliasAnalysis.cpp
@@ -372,6 +372,24 @@ FunctionModRefBehavior AAResults::getModRefBehavior(const Function *F) {
return Result;
}
+raw_ostream &llvm::operator<<(raw_ostream &OS, AliasResult AR) {
+ switch (AR) {
+ case NoAlias:
+ OS << "NoAlias";
+ break;
+ case MustAlias:
+ OS << "MustAlias";
+ break;
+ case MayAlias:
+ OS << "MayAlias";
+ break;
+ case PartialAlias:
+ OS << "PartialAlias";
+ break;
+ }
+ return OS;
+}
+
//===----------------------------------------------------------------------===//
// Helper method implementation
//===----------------------------------------------------------------------===//
OpenPOWER on IntegriCloud