- User Since
- Mar 11 2019, 11:18 PM (97 w, 3 d)
Wed, Jan 20
hi @mivnay, could you please rebase this and D93762 ? So we can test it.
It say that this patch can improve mcf 8%, we are interested at this because we also found that mcf has performance regression caused by ILP data dependency.
Sun, Jan 17
Thanks for fix this. Furthermore, we can add runtime check to see whether this pointer is current coroutine frame, and optimize them separately.
Thu, Jan 14
Sun, Jan 10
Dec 21 2020
Thanks for the patch! Although I may not the right person to accept the patch. BTW, Do you have any plan to salvage debug info under O2 when most of the dbg.declare are changed to dbg.value?
Dec 17 2020
Thanks for review the patch !
Dec 16 2020
Remove the change that do not have testcases
Dec 15 2020
address the comment, update the testcase.
address the comment.
Dec 14 2020
Dec 13 2020
Address the comment, update the testcase. Also fix same issue in foldBitcastSelect.
Dec 10 2020
Dec 9 2020
Dec 8 2020
hi @lxfind, sorry for the late reply. After D85812, we think it might be better to move both of attribute and intrinsic of coroutine into core library, however such changes are too heavy to do.
The reason I suggest adding the attribute into EnumAttr is that i believe that we may need to use presplit attribute in other places (such as lower debug intrinsic. ) and we do not want to write the string anywhere cross different parts. Add API in Function will reduce the impact, so LGTM, thanks for the patch.
Dec 6 2020
Dec 2 2020
Dec 1 2020
Nov 24 2020
Nov 14 2020
Thanks for the patch！
Nov 13 2020
Nov 12 2020
I'm not sure whether we should fix this case by case. Maybe we should use memoryssa to handle this.
Nov 10 2020
Nov 9 2020
One of the another issue is that it is also necessary to track coroutine function parameters correctly under O1/O2 level which use dbg.value. Thoughts?
Nov 6 2020
This patch works for llvm.dbg.addr. So what is status of llvm.dbg.addr? does anyone know about it ?
Oct 28 2020
Oct 27 2020
Thanks for the patch!
Thank you for the explanation!
Oct 26 2020
Thanks for the patch! I think I generally agree with this patch.
One thing is that the aliases seems to be over-analyzed. Can we just leave aliases on frame? Cause I have no idea about this effect on real workloads.
Oct 12 2020
Oct 11 2020
why we should not do this with normal await call?
Sep 28 2020
@efriedma Consider that temporary fix maybe not the best solution for such issue. We would try to find other general solution. Before that, I'll keep this patch as plan changes.
Sep 27 2020
LGTM, thanks for the patch!
Sep 26 2020
Sep 24 2020
No, There is always path from entry to coro.end BB.
Sep 23 2020
Please remove unnecessary headers include and declarations
Sep 22 2020
Sep 21 2020
Update the doc. @efriedma is this ok?
sorry for the late reply.
Sep 18 2020
Sep 17 2020
LGTM, Thanks for the fix.
We try to find an general solution to handle some conservative & mismatch analysis in transformations caused by the change of cfg with coro.suspend intrinsic. However afaik, it seems quiet difficult to deal this without change framework fo coroutine.
This patch just fixes the known issue, it may happens in other passes, FYI.
Sep 15 2020
what does this intrinsic use for?
@lxfind , could you backport this to branch 11?
Sep 14 2020
Sep 10 2020
Thanks for the change. LGTM, and testcase？