internals · 6 of 6 · webassembly
The ABI reaches V8′s WebAssembly objects too. deno_core expects constructors and accessors for modules, instances, memories, tables, and globals. quickjs-ng has no WebAssembly surface, so the QuickJS backend embeds WAMR and wraps its native objects in JavaScript objects. This is a second ownership boundary, and three rules keep it sound:
ArrayBuffer view is re-synced to the new memory; reference values crossing tables and globals keep their QuickJS ownership count