• Manos Koukoutos's avatar
    [wasm-gc] Allow reference types to function signatures · a61aaed9
    Manos Koukoutos authored
    Changes:
    - Remove restriction that function types cannot be used as ref types.
    - Introduce WasmModule::has_type().
    - Remove deferred signature checks in module-decoder. Instead, check if
      type indices are out of bounds in consume_value_type (was bugged
      before).
    - Remove obsolete GetCanonicalRttIndex.
    - Refine type of ref.func.
    - Statically check immediate type against table type for call_indirect.
    - Dynamic check for call_indirect should only happen when for funcref
      (currently the only function supertype).
    - Allocate a different map per function signature (with Map::Copy).
    - Introduce function type equivalence and (trivial) subtyping.
    - Add a few elementary tests.
    
    Bug: v8:7748
    Change-Id: If57d0bfd856c9eb3784191f3de423f53dfd26ef1
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2335190
    Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#69250}
    a61aaed9
Name
Last commit
Last update
..
OWNERS 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-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-module.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-scalar-lowering.cc Loading commit data...
test-run-wasm-simd.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-debug-evaluate.cc Loading commit data...
test-wasm-import-wrapper-cache.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-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...