<div dir="ltr">There hasn't been a resolution for the issue where coroutine-lowering runs optimizations passes before splitting, which breaks thread_local and __attribute__((const)) functions (affecting e.g. pthread_self() and errno). That's definitely a critical issue which must be resolved before coroutines can be reasonably called "done".<div><br><div>See thread "[llvm-dev] [RFC] Coroutine and pthread_self" thread from a year ago, e.g. <a href="https://lists.llvm.org/pipermail/llvm-dev/2020-December/147325.html">https://lists.llvm.org/pipermail/llvm-dev/2020-December/147325.html</a> for the end/summary of the conversation. (Or, starting at <a href="https://lists.llvm.org/pipermail/llvm-dev/2020-November/146766.html">https://lists.llvm.org/pipermail/llvm-dev/2020-November/146766.html</a> and <a href="https://lists.llvm.org/pipermail/llvm-dev/2020-December/147012.html">https://lists.llvm.org/pipermail/llvm-dev/2020-December/147012.html</a>)</div><div><br></div><div>Looks like there's a lot of open bugs about coroutines, <a href="https://github.com/llvm/llvm-project/issues?q=is%3Aissue+is%3Aopen+coroutine">https://github.com/llvm/llvm-project/issues?q=is%3Aissue+is%3Aopen+coroutine</a> ...might be worth going through all of them...</div><div>But, just cherry-picking a few about the above problem:</div><div><a href="https://github.com/llvm/llvm-project/issues/47179">https://github.com/llvm/llvm-project/issues/47179</a> (with thread_local)<br></div><div><a href="https://github.com/llvm/llvm-project/issues/47177">https://github.com/llvm/llvm-project/issues/47177</a> (with pthread_self)<br></div><div><a href="https://github.com/llvm/llvm-project/issues/49257">https://github.com/llvm/llvm-project/issues/49257</a> (with errno)<br></div><div><br></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Dec 13, 2021 at 9:55 PM chuanqi.xcq via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">Hi,</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)"><br></span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">   I noticed that the status of coroutine in cxx_status page is partial previously: <a href="https://clang.llvm.org/cxx_status.html" target="_blank">https://clang.llvm.org/cxx_status.html</a>.</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">   This looks weird to me since coroutine is used broadly and stably in practice and I want to mark it as green. So I tried</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">to move coroutine out of the experimental namespace before and implement the semantics of throwing unhandled_exception()</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">suggested by Lewis.</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">   So I sent <a href="https://reviews.llvm.org/D115692" target="_blank">https://reviews.llvm.org/D115692</a> to mark coroutine as done. I want to ask if there is any blocking issue to do this?</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">I would love to try to fix any inconsistency.</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)"><br></span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">Thanks,</span></div><div style="clear:both"><span style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14px;color:rgb(0,0,0)">Chuanqi</span></div></div>_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br>
</blockquote></div>