[PATCH] D128163: [Coroutines] Don't add musttail call if WebAssembly are enabled

Chuanqi Xu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 27 19:08:08 PDT 2022


ChuanqiXu abandoned this revision.
ChuanqiXu added a comment.

In D128163#3613288 <https://reviews.llvm.org/D128163#3613288>, @tlively wrote:

> I think it would make sense to add a new method to TTI for this, since hardcoding an exception for Wasm is not going to be future-proof at all. The `tail-call` target feature, while not standard yet, is very close to being standardized and shipped in browsers. It's already available behind a flag in Chrome and Node.

Yeah, it makes sense.

> Also, if possible, it would be good to perform a different transformation that can still do symmetric transfer without tail calls if the prevailing view is that symmetric transfer is guaranteed by the spec (but simply omitting musttail for now seems like a reasonable stopgap measure).

Maybe it is possible to perform symmetric transfer without tail call. But the complexity of implementation and efficiency may be a problem. So the first step might omit it simply and I'll file an issue for it.


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

https://reviews.llvm.org/D128163



More information about the llvm-commits mailing list