You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[Custom Descriptors] Make imported functions inexact (#7993)
Defined functions remain exact, but imported ones are inexact.
This is a step along the recent Custom Descriptors spec changes.
* New RefFunc::finalize and Literal::makeFunc variants get the module, and look up
the type there.
* New Builder::makeRefFunc variant gets a Type and applies it. The HeapType
variant does a lookup on the module (so the Type one is more efficient/applicable
if the IR is not fully built yet).
* ReFinalize now updates RefFunc types (following the pattern of a few other places).
C and JS APIs now assume RefFuncs are created after imported functions (so we can
look up the type of the import; see changelog, this seems the least-annoying way to
update here, avoiding new APIs, and less breakage for users - hopefully none, all our
tests here pass as is).
* wasm-split adds a cast when a function becomes an inexact import.
* Fix GUFA to handle inexact function literals.
* Update types in passes and fuzzer as needed.
0 commit comments