[Webkit-unassigned] [Bug 239666] New: [Wasm-GC] Add support for recursion groups

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Apr 22 12:23:43 PDT 2022


https://bugs.webkit.org/show_bug.cgi?id=239666

            Bug ID: 239666
           Summary: [Wasm-GC] Add support for recursion groups
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebAssembly
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: asumu at igalia.com

The latest version of the Wasm GC proposal introduces a notion of a "recursion group" (https://github.com/WebAssembly/gc/blob/main/proposals/gc/MVP.md#type-definitions), which is a way to explicitly introduce recursive types in an iso-recursive type system. These type definitions use the operator `rec` to introduce types.

An example `rec` type declaration:

```
(module
  (rec (type $f (func (result (ref 0))))
       (type $s (struct))))
```

JSC will need to support these and also new `sub` types to fully support the GC proposal. The basic implementation of rec types is thankfully not too difficult in JSC thanks to the fact that Wasm type definitions are already hash-consed. (the iso-recursive type system design makes it easy to support a bottom-up, hash-consed implementation strategy)

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20220422/60d98bbe/attachment.htm>


More information about the webkit-unassigned mailing list