diff options
| author | Chris Lattner <sabre@nondot.org> | 2009-11-23 16:46:41 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2009-11-23 16:46:41 +0000 |
| commit | 1e7b37ebba68b7fe0bb36b039096ff6c78e6e31f (patch) | |
| tree | 5182bf8a0c0787ca9601e92027eb1af4c10fd7a0 /llvm/lib/Analysis/AliasAnalysis.cpp | |
| parent | 98e25326a06924abfbe03a7b5cfb42c7bdf8de16 (diff) | |
| download | llvm-1e7b37ebba68b7fe0bb36b039096ff6c78e6e31f.zip llvm-1e7b37ebba68b7fe0bb36b039096ff6c78e6e31f.tar.gz llvm-1e7b37ebba68b7fe0bb36b039096ff6c78e6e31f.tar.bz2 | |
use the new isNoAlias method to simplify some code, only do an escaping check if
we have a non-constant pointer. Constant pointers can't be local.
llvm-svn: 89665
Diffstat (limited to 'llvm/lib/Analysis/AliasAnalysis.cpp')
| -rw-r--r-- | llvm/lib/Analysis/AliasAnalysis.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/llvm/lib/Analysis/AliasAnalysis.cpp b/llvm/lib/Analysis/AliasAnalysis.cpp index 92fa1df..dee9b53 100644 --- a/llvm/lib/Analysis/AliasAnalysis.cpp +++ b/llvm/lib/Analysis/AliasAnalysis.cpp @@ -127,17 +127,18 @@ AliasAnalysis::getModRefBehavior(Function *F, AliasAnalysis::ModRefResult AliasAnalysis::getModRefInfo(CallSite CS, Value *P, unsigned Size) { - ModRefResult Mask = ModRef; ModRefBehavior MRB = getModRefBehavior(CS); if (MRB == DoesNotAccessMemory) return NoModRef; - else if (MRB == OnlyReadsMemory) + + ModRefResult Mask = ModRef; + if (MRB == OnlyReadsMemory) Mask = Ref; else if (MRB == AliasAnalysis::AccessesArguments) { bool doesAlias = false; for (CallSite::arg_iterator AI = CS.arg_begin(), AE = CS.arg_end(); AI != AE; ++AI) - if (alias(*AI, ~0U, P, Size) != NoAlias) { + if (!isNoAlias(*AI, ~0U, P, Size)) { doesAlias = true; break; } |
