v8/test/cctest/wasm
Andreas Haas 7d844bdbb0 [wasm][liftoff] Fix reftype parameter handling
LiftoffCompiler::ProcessParameter assumed that by processing parameters
in the order of their index, register parameters get
processed first, and that for processing stack parameters it can already
use all registers as temp registers. This is not true with reference
type parameters, because registers always first get assigned to value
type parameters even when there is a reference type parameter with a
lower index. Because of this incorrect assumption register parameters
were overwritten by reference type parameters on the stack that got
processed first.

With this CL, only those registers get used as temp registers for
reference type parameters that are not used for parameters.

CC=jkummerow@chromium.org, clemensb@chromium.org
R=thibaudm@chromium.org

Bug: v8:11596
Change-Id: I30ed7f073147df0bd81b9ef4d2b2a54d7badc937
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2784560
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Jakob Kummerow <jkummerow@chromium.org>
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Cr-Commit-Position: refs/heads/master@{#73635}
2021-03-24 14:43:19 +00:00
..
DIR_METADATA Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
OWNERS Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
test-backing-store.cc [wasm] Move test-backing-store.cc to wasm directory 2021-03-03 13:07:01 +00:00
test-c-wasm-entry.cc [test][cleanup] Rename WASM_*_LOCAL to WASM_LOCAL_* 2020-12-17 21:19:14 +00:00
test-compilation-cache.cc Reland "Reland "[wasm] Cache streaming compilation result"" 2020-02-03 13:49:18 +00:00
test-gc.cc [wasm][liftoff] Fix reftype parameter handling 2021-03-24 14:43:19 +00:00
test-grow-memory.cc [wasm][cleanup] Rename WASM_GROW_MEMORY to WASM_MEMORY_GROW 2021-03-17 14:37:34 +00:00
test-jump-table-assembler.cc Add RISC-V backend 2021-02-09 17:06:36 +00:00
test-liftoff-inspection.cc [wasm][liftoff][eh] Implement rethrow 2021-03-09 15:23:06 +00:00
test-run-wasm-64.cc [wasm] Rename kWasmStmt -> kWasmVoid 2021-03-22 07:58:18 +00:00
test-run-wasm-asmjs.cc [test][cleanup] Rename WASM_*_LOCAL to WASM_LOCAL_* 2020-12-17 21:19:14 +00:00
test-run-wasm-atomics64.cc [test][cleanup] Rename WASM_*_LOCAL to WASM_LOCAL_* 2020-12-17 21:19:14 +00:00
test-run-wasm-atomics.cc [test][cleanup] Rename WASM_*_LOCAL to WASM_LOCAL_* 2020-12-17 21:19:14 +00:00
test-run-wasm-bulk-memory.cc [wasm] Remove bulk-memory flag 2021-01-12 15:28:39 +00:00
test-run-wasm-exceptions.cc [wasm][interpreter] Fix max stack height for implicit rethrow 2021-03-24 11:40:01 +00:00
test-run-wasm-interpreter.cc [wasm][cleanup] Rename WASM_GROW_MEMORY to WASM_MEMORY_GROW 2021-03-17 14:37:34 +00:00
test-run-wasm-js.cc [test][cleanup] Rename WASM_*_LOCAL to WASM_LOCAL_* 2020-12-17 21:19:14 +00:00
test-run-wasm-memory64.cc [wasm][memory64] Fix typing of memory.grow 2021-03-19 13:51:23 +00:00
test-run-wasm-module.cc [wasm][cleanup] Rename WASM_GROW_MEMORY to WASM_MEMORY_GROW 2021-03-17 14:37:34 +00:00
test-run-wasm-relaxed-simd.cc [relaxed-simd] Move tests into separate file 2021-03-22 18:41:54 +00:00
test-run-wasm-sign-extension.cc [test][cleanup] Rename WASM_*_LOCAL to WASM_LOCAL_* 2020-12-17 21:19:14 +00:00
test-run-wasm-simd-liftoff.cc [test][cleanup] Rename WASM_*_GLOBAL to WASM_GLOBAL_* 2020-12-17 21:26:54 +00:00
test-run-wasm-simd-scalar-lowering.cc [wasm-simd] Rename vXXXX.all_true to iXXXX.all_true 2021-03-10 00:00:30 +00:00
test-run-wasm-simd.cc [wasm-simd] Improve extadd pairwise test 2021-03-22 23:35:54 +00:00
test-run-wasm-wrappers.cc [test][cleanup] Rename WASM_*_LOCAL to WASM_LOCAL_* 2020-12-17 21:19:14 +00:00
test-run-wasm.cc [wasm] Rename kWasmStmt -> kWasmVoid 2021-03-22 07:58:18 +00:00
test-streaming-compilation.cc [wasm] Rename kWasmStmt -> kWasmVoid 2021-03-22 07:58:18 +00:00
test-wasm-breakpoints.cc [wasm-gc][inspector] Debugging support for WasmGC 2021-03-05 10:21:35 +00:00
test-wasm-codegen.cc [zone] Cleanup zone allocations in src/wasm and tests 2020-07-10 12:11:55 +00:00
test-wasm-import-wrapper-cache.cc [wasm] Faster wasm-to-js calls with arguments mismatch 2020-07-28 15:53:21 +00:00
test-wasm-metrics.cc [IWYU] Fix includes of wasm-engine.h 2021-03-08 11:33:59 +00:00
test-wasm-serialization.cc [wasm][inspector] Don't use Script::source_url to store URL. 2021-03-19 12:19:13 +00:00
test-wasm-shared-engine.cc [wasm] Allow specifying larger code space limits 2020-08-28 16:25:36 +00:00
test-wasm-stack.cc [api] Add StackFrame GetScriptSource and GetScriptSourceMappingURL 2021-03-03 06:37:44 +00:00
test-wasm-trap-position.cc [wasm] Remove interpreter entry code 2020-05-05 11:18:05 +00:00
wasm-atomics-utils.h [wasm][cleanup] Using 'using' instead of 'typedef' 2019-03-29 10:20:30 +00:00
wasm-run-utils.cc [wasm][inspector] Don't use Script::source_url to store URL. 2021-03-19 12:19:13 +00:00
wasm-run-utils.h [wasm][memory64] Fix typing of memory.grow 2021-03-19 13:51:23 +00:00
wasm-simd-utils.cc [relaxed-simd] Move tests into separate file 2021-03-22 18:41:54 +00:00
wasm-simd-utils.h [relaxed-simd] Move tests into separate file 2021-03-22 18:41:54 +00:00