diff options
author | George Burgess IV <george.burgess.iv@gmail.com> | 2018-06-14 19:55:53 +0000 |
---|---|---|
committer | George Burgess IV <george.burgess.iv@gmail.com> | 2018-06-14 19:55:53 +0000 |
commit | aa283d80fe7aaa9460e510f20a732f9fbff69ac4 (patch) | |
tree | 6e98abb444fed226d46bfae97eed66259bd6747a /llvm/lib/Analysis/AliasAnalysis.cpp | |
parent | f85ca6abee7351aa5d059d7ec241e1ac016c59fb (diff) | |
download | bcm5719-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.cpp | 18 |
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 //===----------------------------------------------------------------------===// |