Lars Hansen
unread,Mar 7, 2019, 4:07:09 AM3/7/19You do not have permission to delete messages in this group
Sign in to report message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to dev-tech-js-engine-internals
After a lot of heavy lifting by Julian, we now have support for wasm stack
maps in both Baldr (wasm ion) and Rabaldr (wasm baseline), and I just
pushed the patches to enable this feature. Essentially, this allows wasm
to manipulate references to JS objects - pass them and return them, store
them in locals and globals and tables. Wasm has no operations on the
objects but can at least talk about them (and test them for null). This is
a big deal for interacting safely with JS and the browser from wasm
programs.
A couple of notes about that:
- What we don't have is much content that uses this functionality yet, so
there's a risk of some turbulence as problems are ironed out. It should be
possible to configure with --disable-wasm-reftypes to turn the feature off,
in a pinch.
- We still have one compiler (namely cranelift) that does not support wasm
reference types, so test cases in wasm/gc will start failing for that
compiler and will need to be updated to not run when that compiler is
selected.
--lars