diff options
Diffstat (limited to 'llvm/lib/Analysis/BasicAliasAnalysis.cpp')
-rw-r--r-- | llvm/lib/Analysis/BasicAliasAnalysis.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Analysis/BasicAliasAnalysis.cpp b/llvm/lib/Analysis/BasicAliasAnalysis.cpp index 73dc0457ea8..be4e8e972d0 100644 --- a/llvm/lib/Analysis/BasicAliasAnalysis.cpp +++ b/llvm/lib/Analysis/BasicAliasAnalysis.cpp @@ -570,6 +570,9 @@ FunctionModRefBehavior BasicAAResult::getModRefBehavior(ImmutableCallSite CS) { /// Returns the behavior when calling the given function. For use when the call /// site is not known. +/// NOTE: Because of the special case handling of llvm.assume below, the result +/// of this function may not match similar results derived from function +/// attributes (e.g. "readnone"). FunctionModRefBehavior BasicAAResult::getModRefBehavior(const Function *F) { // If the function declares it doesn't access memory, we can't do better. if (F->doesNotAccessMemory()) @@ -577,7 +580,7 @@ FunctionModRefBehavior BasicAAResult::getModRefBehavior(const Function *F) { // While the assume intrinsic is marked as arbitrarily writing so that // proper control dependencies will be maintained, it never aliases any - // particular memory location. + // actual memory locations. if (F->getIntrinsicID() == Intrinsic::assume) return FMRB_DoesNotAccessMemory; |