• Manos Koukoutos's avatar
    [wasm] Properly implement parsing of s33 values · 5df74c35
    Manos Koukoutos authored
    Motivation:
    We used to approximate s33/i33 value parsing by first checking for
    specific negative codes, and then parsing an u32 value if that failed.
    This is not correct in all cases.
    
    Changes:
    - Implement i33 parsing in Decoder.
    - Factor out parsing of heap types into read_heap_type.
    - Introduce HeapType::kBottom.
    - Introduce helper functions in WasmFeatures and value_type_reader.
    - Remove macros from the parsing of value types.
    - HeapType::code now returns an i32 for compatibility with the i33
      requirement.
    - Introduce HeapType::Repr.
    - Renamings: HeapType::type() -> representation(),
                 ValueType::heap() -> heap_representation()
    
    Bug: v8:7748
    Change-Id: I04deabce8837a48af2226411cd706a397f9e5725
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2274118
    Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
    Reviewed-by: 's avatarJakob Kummerow <jkummerow@chromium.org>
    Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#68633}
    5df74c35
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...