aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/BasicAliasAnalysis.cpp
diff options
context:
space:
mode:
authorChuanqi Xu <yedeng.yd@linux.alibaba.com>2022-07-20 17:00:58 +0800
committerChuanqi Xu <yedeng.yd@linux.alibaba.com>2022-07-20 17:00:58 +0800
commit645d2dd3a9c24dd49f6712fea332e58c55d6c1d3 (patch)
treefe1f7b7a11b79ef16a07488eecef5baede8dd4e3 /llvm/lib/Analysis/BasicAliasAnalysis.cpp
parent051738b08cf5e39fd274dd379147d1c19e2b5b20 (diff)
downloadllvm-645d2dd3a9c24dd49f6712fea332e58c55d6c1d3.zip
llvm-645d2dd3a9c24dd49f6712fea332e58c55d6c1d3.tar.gz
llvm-645d2dd3a9c24dd49f6712fea332e58c55d6c1d3.tar.bz2
Revert "Don't treat readnone call in presplit coroutine as not access memory"
This reverts commit 57224ff4a6833dca1f17568cc9cf77f9579030ae. This commit may trigger crashes on some workloads. Revert it for clearness.
Diffstat (limited to 'llvm/lib/Analysis/BasicAliasAnalysis.cpp')
-rw-r--r--llvm/lib/Analysis/BasicAliasAnalysis.cpp6
1 files changed, 1 insertions, 5 deletions
diff --git a/llvm/lib/Analysis/BasicAliasAnalysis.cpp b/llvm/lib/Analysis/BasicAliasAnalysis.cpp
index 76a1953..c3b032ab 100644
--- a/llvm/lib/Analysis/BasicAliasAnalysis.cpp
+++ b/llvm/lib/Analysis/BasicAliasAnalysis.cpp
@@ -767,11 +767,7 @@ FunctionModRefBehavior BasicAAResult::getModRefBehavior(const CallBase *Call) {
// If the call has operand bundles then aliasing attributes from the function
// it calls do not directly apply to the call. This can be made more precise
// in the future.
- //
- // If the call lives in a presplit coroutine, the readnone, writeonly,
- // inaccessiblememonly and inaccessiblemem_or_argmemonly attribute from the
- // function might not directly apply to the call.
- if (!Call->hasOperandBundles() && !Call->getFunction()->isPresplitCoroutine())
+ if (!Call->hasOperandBundles())
if (const Function *F = Call->getCalledFunction())
Min =
FunctionModRefBehavior(Min & getBestAAResults().getModRefBehavior(F));