[PATCH] D127383: Don't treat readnone call in presplit coroutine as not access memory

Chuanqi Xu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 9 01:27:00 PDT 2022


ChuanqiXu created this revision.
ChuanqiXu added reviewers: rjmccall, jyknight, nhaehnle, efriedma, danilaml.
ChuanqiXu added a project: LLVM.
Herald added subscribers: jeroen.dobbelaere, hiraditya.
Herald added a project: All.
ChuanqiXu requested review of this revision.
Herald added a subscriber: llvm-commits.

To solve the readnone problems in coroutines. See https://discourse.llvm.org/t/address-thread-identification-problems-with-coroutine/62015 for details.

According to the discussion, we decide to fix the problem by inserting `isPresplitCoroutine()` checks in different passes instead of wrapping/unwrapping readnone attributes  in CoroEarly/CoroCleanup passes.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D127383

Files:
  llvm/include/llvm/IR/InstrTypes.h
  llvm/lib/Analysis/BasicAliasAnalysis.cpp
  llvm/lib/Analysis/GlobalsModRef.cpp
  llvm/test/Transforms/Coroutines/coro-readnone-01.ll
  llvm/test/Transforms/Coroutines/coro-readnone-02.ll
  llvm/unittests/Analysis/AliasAnalysisTest.cpp
  llvm/unittests/Analysis/GlobalsModRefTest.cpp
  llvm/unittests/IR/InstructionsTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D127383.435444.patch
Type: text/x-patch
Size: 14718 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220609/0a20a153/attachment.bin>


More information about the llvm-commits mailing list