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 _______________________________________________ dev-tech-js-engine-internals mailing list dev-tech-js-engine-internals@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals