gc icon indicating copy to clipboard operation
gc copied to clipboard

Branch of the spec repo scoped to discussion of GC integration in WebAssembly

Results 79 gc issues
Sort by recently updated
recently updated
newest added

This is a follow-up to https://github.com/WebAssembly/gc/issues/313#issuecomment-1458062757 where the question was raised whether we'd need or want to have an `array.new_copy` instruction. We have a micro-benchmark mainly consisting of copying an...

Post-MVP

Currently the JS API is proposed to be a "no-frills" approach (https://github.com/WebAssembly/gc/issues/279). One question that hasn't been resolved yet is if and how type reflection should interact with this proposal....

Post-MVP

`br_if` previously had type `[t* i32] -> [t*]` where `[t*]` was the type of its target label. This typing unnecessarily lost type information in cases where the actual input result...

If I understand this right, i31ref is supposed to be implemented by the engine as a tagged pointer. As mentioned in https://github.com/WebAssembly/gc/blob/master/proposals/gc/Overview.md#unboxed-scalars, a larger type could cause portability hazards by...

Hey folks! I've finally got all of Wasm GC implemented for Wasmtime and all spec tests passing.[^1] I also have a sizable backlog of potential optimizations to do. But, of...

Hello, first of all I am sorry if I've failed to do sufficient research on this topic and am fundamentally misunderstanding some core aspect of the WASM GC extension, please...

Various test assertions require the testsuite runner implementation to understand the type matching logic, for example: ```wast (module (global $null nullref (ref.null none)) (func (export "anyref") (result anyref) (global.get $null))...

As globals can now have initial expressions that point to other globals, it's not possible to compute all the initialiser expressions into a vector ahead of global allocation. For example...

It seems WasmGC currently can only create WasmGC arrays via the following instructions: * `array.new` * `array.new_default` * `array.new_fixed` * `array.new_elem` * `array.new_data` If the array's field type is `const`...