• Manos Koukoutos's avatar
    [wasm][fuzzer] Complex init. expressions in JS testcase · 74d9a764
    Manos Koukoutos authored
    We enable struct.new and array.init initializer expressions in the JS
    testcase generated by --wasm-fuzzer-gen-test. We needed to make some
    changes in the WasmInitExpr class, and to implement a new interface for
    the WasmFullDecoder, which constructs a WasmInitExpr.
    Changes:
    - Make WasmInitExpr a ZoneObject. Use a pointer for its operands_ field.
      This is needed so WasmInitExpr is trivially copiable, and thus usable
      as a Value type in WasmFullDecoder.
    - Implement a WasmFullDecoder interface in wasm-fuzzer-common that
      constructs a WasmInitExpr. Use it to decode initializers in the
      module generated by the fuzzer.
    - Change AppendInitExpr to take a WasmInitExpr as argument.
    - Fix an issue with printing of struct definitions.
    - Change initializer expression used for structs to struct.new_with_rtt.
      This is consistent with the currently used structural types.
    
    Bug: v8:11954
    Change-Id: I65a87cc98701a54f32500be192b3b6eef2ff6c8c
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3257712Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
    Reviewed-by: 's avatarThibaud Michaud <thibaudm@chromium.org>
    Commit-Queue: Manos Koukoutos <manoskouk@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77730}
    74d9a764
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-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...