• Jakob Kummerow's avatar
    [wasm-gc] call_ref: consume a type immediate · 61687829
    Jakob Kummerow authored
    Per https://github.com/WebAssembly/function-references/pull/76,
    call_ref and return_call_ref should consume type immediates specifying
    the signature of the funcref. This is a breaking change.
    
    To ease the migration, this patch introduces a temporary alternative
    binary encoding for call_ref:
    - 0x14 continues to *not* take a type immediate for now.
    - 0x17 (formerly "let") is the new call_ref *with* type immediate. Module
      producers are encouraged to emit this encoding ASAP.
    - After a few weeks of transitionary period, we'll update 0x14 to
      take a type immediate as well. At this point, module producers will be
      encouraged to switch back to 0x14.
    - After a few more weeks of transitionary period, we'll drop 0x17 again.
    
    We're not doing the same dance for return_call_ref because it currently
    has no uses that we know of.
    
    Bug: v8:7748,v8:9495
    Change-Id: Id8d468be3949f84571efff713c937ffd1addff70
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3863280Reviewed-by: 's avatarMatthias Liedtke <mliedtke@chromium.org>
    Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
    Auto-Submit: Jakob Kummerow <jkummerow@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#82839}
    61687829
Name
Last commit
Last update
..
DIR_METADATA Loading commit data...
OWNERS Loading commit data...
test-backing-store.cc Loading commit data...
test-c-wasm-entry.cc Loading commit data...
test-compilation-cache.cc Loading commit data...
test-gc.cc Loading commit data...
test-grow-memory.cc Loading commit data...
test-jump-table-assembler.cc Loading commit data...
test-liftoff-for-fuzzing.cc Loading commit data...
test-liftoff-inspection.cc Loading commit data...
test-run-wasm-64.cc Loading commit data...
test-run-wasm-asmjs.cc Loading commit data...
test-run-wasm-atomics.cc Loading commit data...
test-run-wasm-atomics64.cc Loading commit data...
test-run-wasm-bulk-memory.cc Loading commit data...
test-run-wasm-exceptions.cc Loading commit data...
test-run-wasm-interpreter.cc Loading commit data...
test-run-wasm-js.cc Loading commit data...
test-run-wasm-memory64.cc Loading commit data...
test-run-wasm-module.cc Loading commit data...
test-run-wasm-relaxed-simd.cc Loading commit data...
test-run-wasm-sign-extension.cc Loading commit data...
test-run-wasm-simd-liftoff.cc Loading commit data...
test-run-wasm-simd.cc Loading commit data...
test-run-wasm-wrappers.cc Loading commit data...
test-run-wasm.cc Loading commit data...
test-streaming-compilation.cc Loading commit data...
test-wasm-breakpoints.cc Loading commit data...
test-wasm-codegen.cc Loading commit data...
test-wasm-import-wrapper-cache.cc Loading commit data...
test-wasm-metrics.cc Loading commit data...
test-wasm-serialization.cc Loading commit data...
test-wasm-shared-engine.cc Loading commit data...
test-wasm-stack.cc Loading commit data...
test-wasm-strings.cc Loading commit data...
test-wasm-trap-position.cc Loading commit data...
wasm-atomics-utils.h Loading commit data...
wasm-run-utils.cc Loading commit data...
wasm-run-utils.h Loading commit data...
wasm-simd-utils.cc Loading commit data...
wasm-simd-utils.h Loading commit data...