alexcrichton opened PR #12427 from alexcrichton:fixup-and-check-may-leave to bytecodealliance:main:
This commit moves all may-leave flag handling into compiled trampolines rather than doing this in Rust. This means it can't be forgotten on the Rust side of things and will be slightly more efficient to boot. This then additionally exempts some intrinsics from checking may-leave since Wasmtime erroneously checked when it shouldn't have.
Closes #12397
Closes #12403<!--
Please make sure you include the following information:
If this work has been discussed elsewhere, please include a link to that
conversation. If it was discussed in an issue, just mention "issue #...".Explain why this change is needed. If the details are in an issue already,
this can be brief.Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.htmlPlease ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->
alexcrichton commented on PR #12427:
This is a draft for now because the new tests I added are failing (some intrinsics aren't supporting being called in post-return for example) and I need to bottom that out.
github-actions[bot] added the label wasmtime:api on PR #12427.
Last updated: Jan 29 2026 at 13:25 UTC