The Wasm GC proposal will likely adopt a minimal initial JS API as described here: https://github.com/WebAssembly/gc/issues/279 This bug is for the initial implementation of that JS API. The changes this will require in JSC are to allow structs/arrays to pass out of Wasm to JS (this currently throws), and then ensure that those objects appear frozen (and most operations on them should throw). There are also a few places where conversion operations are needed, such as for globals and tables. And also for i31ref values, which require a conversion from appropriate Number values (this is a no-op if the JS representation is an integer, but may require a conversion if it's represented as a double).
<rdar://problem/101604735>
Pull request: https://github.com/WebKit/WebKit/pull/10408
The patch for this already landed, not sure why it wasn't automatically closed. I'm closing it as fixed.