[PATCH] D153151: [EarlyCSE] Do not CSE convergent readnone calls

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 16 15:34:43 PDT 2023


arsenm added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/EarlyCSE.cpp:144
+             !CI->getFunction()->isPresplitCoroutine() &&
+             !CI->isConvergent();
     }
----------------
foad wrote:
> arsenm wrote:
> > Maybe should be checking nosync instead?
> How is that related?
The comment here and special case of coroutines seems like it was hacking around the general check of nosync. In a roundabout way checking nosync is the same as convergent. IIRC the interaction between them is no-convergent + memory(none) implies nosync


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D153151/new/

https://reviews.llvm.org/D153151



More information about the llvm-commits mailing list