[llvm] [Coroutines][LazyCallGraph] resumes are not really SCC (PR #116285)
Tyler Nowicki via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 14 15:53:28 PST 2024
TylerNowicki wrote:
> I am a bit uncomfortable with general CGSCC mutation API changes. Reading the old diff, you referenced it looks like this design is deliberate. ~Don't we have the `.resumers` array GV for this? Would it work by fabricating another reference to it?~ You mentioned continuation, a different ABI.
As far as I can see this is only used by CoroSplit, the method was introduced to add a group of continuations.
There are certainly ways to work around this, but any solution is a kind of hack. For example it should be possible to add dead code that makes each resume reference all other the others (as is what happens right now).
I was hoping with this PR to gain a better understanding of how CGSCC and coroutines are working together. Currently that is not well documented although I may have missed it. And perhaps find a way to avoid using hacks.
https://github.com/llvm/llvm-project/pull/116285
More information about the llvm-commits
mailing list