fitzgen opened PR #10458 from fitzgen:gc-ref-libcalls-u32-abi
to bytecodealliance:main
:
We are logically returning a
VMGcRef
from these libcalls, which is aNonZeroU32
under the covers. We were representing that value as au32
, and then to represent traps and panics, we packed that into au64
and if theu64
was negative that meant there was a trap/panic but otherwise we could unpack the bottom half and that was our result.But because our GC refs are non-zero, we don't need to extend to a
u64
to get a sentinel for traps/panics; we can just use zero. That's what this commit does.<!--
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
-->
fitzgen requested dicej for a review on PR #10458.
fitzgen requested wasmtime-core-reviewers for a review on PR #10458.
github-actions[bot] commented on PR #10458:
Subscribe to Label Action
cc @fitzgen
<details>
This issue or pull request has been labeled: "wasmtime:api", "wasmtime:ref-types"Thus the following users have been cc'd because of the following labels:
- fitzgen: wasmtime:ref-types
To subscribe or unsubscribe from this label, edit the <code>.github/subscribe-to-label.json</code> configuration file.
Learn more.
</details>
alexcrichton submitted PR review.
alexcrichton merged PR #10458.
Last updated: Apr 18 2025 at 09:03 UTC