Chuanqi Xu
Chuanqi Xu
Yeah, maybe it is too fine and the result number may change surprisingly. But I think that one is much better than none. May be it is not the best....
It is fine if we don't use symmetric transfer: https://godbolt.org/z/YP3vYsfEE
For this case, the reason why HALO fails to perform is that the compiler can't be sure the coroutine frame is guaranteed to be resumed. The key condition for HALO...
> Thanks Chuanqi. Did anything come of your presentation? Not yet. I don't have enough time that day. Compiler are generally not good at IPO (Inter Procedural Optimization) and many...
Thanks for reporting. I'll take a look.
Your analysis is basically correct. And this one is not easy to fix. The biggest difference of coroutines between clang and gcc is that gcc handles coroutines in the frontend...
And from the link you pasted, `computed goto ` looks like primarily for performance but it doesn't relate to correctness. So I think you want an interpretable interpreter? If yes,...
> I think, we should furthermore disable inlining of any function which contains computed-gotos into a coroutine function. Currently, the LLVM will not inline these kind of function by default:...
Reproduced in O2 but failed in O1. I'll take a look. Thanks!
Weird, I can't reproduce this locally. @adrianimboden could you show the result of `clang++ -v`. Just like: ``` clang version 15.0.0 ([email protected]:llvm/llvm-project.git 4ba6a9c9f65bbc8bd06e3652cb20fd4dfc846137) Target: x86_64-unknown-linux-gnu Thread model: posix ``` I...