• Ng Zhi An's avatar
    Reland "[wasm-simd][arm64] Fuse add and extmul" · c03354b4
    Ng Zhi An authored
    This is a reland of 65515ddd
    
    Fix is to use AddWithWraparound for signed additions to avoid UB.
    
    Original change's description:
    > [wasm-simd][arm64] Fuse add and extmul
    >
    > We can select a better instruction for add+extmul, using one of the
    > multiply-long-accumulate instruction.
    >
    > Define a helper struct to pattern match Add(x, OP(y, z)) and
    > Add(OP(x, y) z), and ensure that the matched OP is always on the
    > LHS, to simplify checking for matches.
    >
    > Bug: v8:11548
    > Change-Id: I7ab488b262aa9f749785f973549ccd9fad72f4c8
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2826725
    > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
    > Commit-Queue: Zhi An Ng <zhin@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#76708}
    
    Bug: v8:11548
    Change-Id: I675ab8b78d9c6c30b82a8c96c8e7098a548c6a60
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3144379
    Commit-Queue: Zhi An Ng <zhin@chromium.org>
    Reviewed-by: 's avatarDeepti Gandluri <gdeepti@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#76712}
    c03354b4
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...