Skip to content

Tracking Issue for wasm exception-handling architecture intrinsics #122465

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
1 of 3 tasks
coolreader18 opened this issue Mar 14, 2024 · 0 comments
Open
1 of 3 tasks

Tracking Issue for wasm exception-handling architecture intrinsics #122465

coolreader18 opened this issue Mar 14, 2024 · 0 comments
Labels
C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.

Comments

@coolreader18
Copy link
Contributor

coolreader18 commented Mar 14, 2024

Feature gate: #![feature(wasm_exception_handling_intrinsics)]

This is a tracking issue for wasm exception-handling architecture intrinsics; currently, only the throw instruction is implemented as a platform intrinsic.

Public API

// core::arch::wasm32

pub unsafe fn throw<const TAG: i32>(ptr: *mut u8) -> !;

Steps / History

Unresolved Questions

  • Needs better support from LLVM before merging. At the moment, LLVM only accepts a tag value of 0, signifying a C++ exception. Ideally one would be able to somehow declare a tag in a similar way to a static, and pass that as the TAG to the intrinsic.

Footnotes

  1. https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html

@coolreader18 coolreader18 added C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC T-libs-api Relevant to the library API team, which will review and decide on the PR/issue. labels Mar 14, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC T-libs-api Relevant to the library API team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

1 participant