4f0ef8c31d
Currently, we canonicalize types for call_indirect by looking in the current module for a signature of the same shape. This is not enough as of wasm-gc. Instead, the canonical identifier representing a type has to be computed via isorecursive canonicalization. This change is implemented behind a flag for now. Future work: Also integrate export wrappers with isorecursive canonical types. We need to store wrappers in instance-independent storage. Drive-by: - Always emit type check for call_indirect. We did not emit a check only when typed-function-references was enabled, but not gc. This is not something that will be possible long-term. - Fix some wasm cctests. Bug: v8:7748 Change-Id: I7cced187009ac148c833dff5e720a8bb9a717e68 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3784600 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#82064} |
||
---|---|---|
.. | ||
control-transfer-unittest.cc | ||
decoder-unittest.cc | ||
DIR_METADATA | ||
function-body-decoder-unittest.cc | ||
leb-helper-unittest.cc | ||
liftoff-register-unittests.cc | ||
loop-assignment-analysis-unittest.cc | ||
memory-protection-unittest.cc | ||
module-decoder-memory64-unittest.cc | ||
module-decoder-unittest.cc | ||
OWNERS | ||
simd-shuffle-unittest.cc | ||
streaming-decoder-unittest.cc | ||
string-builder-unittest.cc | ||
subtyping-unittest.cc | ||
trap-handler-posix-unittest.cc | ||
trap-handler-simulator-unittest.cc | ||
trap-handler-win-unittest.cc | ||
trap-handler-x64-unittest.cc | ||
wasm-code-manager-unittest.cc | ||
wasm-compiler-unittest.cc | ||
wasm-gdbserver-unittest.cc | ||
wasm-macro-gen-unittest.cc | ||
wasm-module-builder-unittest.cc | ||
wasm-module-sourcemap-unittest.cc |