[all-commits] [llvm/llvm-project] 1cedc5: [Coroutines] Don't merge readnone calls in prespl...

Chuanqi Xu via All-commits all-commits at lists.llvm.org
Sun Oct 16 19:37:25 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1cedc51ff5a2a4f51a4c7e8bb04bd145ac05fa50
      https://github.com/llvm/llvm-project/commit/1cedc51ff5a2a4f51a4c7e8bb04bd145ac05fa50
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2022-10-17 (Mon, 17 Oct 2022)

  Changed paths:
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    A llvm/test/Transforms/Coroutines/coro-readnone-02.ll
    A llvm/test/Transforms/Coroutines/coro-readnone.ll

  Log Message:
  -----------
  [Coroutines] Don't  merge readnone calls in presplit coroutines

Another alternative to fix the thread identification problem in
coroutines.

We plan to fix this problem by unifying memory effecting attributes. See
https://discourse.llvm.org/t/rfc-unify-memory-effect-attributes/65579.
But it may be a long-term project. And it is a pity that the coroutines
can't resume in different threads for years. So this one is temporary
fix. It may cause unnecessary performance regression for coroutines. But
correctness are more important. And this one is planned to be reverted
after we are able to unify the memory effecting attributes actually.

Reviewed By: jdoerfert, rjmccall

Differential Revision: https://reviews.llvm.org/D135550




More information about the All-commits mailing list