v8/test/mjsunit/wasm
Frederik Gossen ffc75252a5 [wasm-hints] Fix lazy compilation and validation in interpreter
The interpreter accesses code directly from the code manager. With lazy
validation, however, this code is not guaranteed to exist. The
interpreter now checks for this and compiles it lazily if needed. It
also handles exceptions that may arise from lazy validation.

Bug: v8:9003
Change-Id: I37c365f0a4d755ed55630d01c8526f2a3efa9a9e
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594567
Reviewed-by: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Commit-Queue: Frederik Gossen <frgossen@google.com>
Cr-Commit-Position: refs/heads/master@{#61240}
2019-05-06 13:56:38 +00:00
..
embenchen
adapter-frame.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
add-getters.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
anyfunc-interpreter.js [wasm] Support anyref for external calls in interpreter. 2019-04-09 13:42:57 +00:00
anyfunc.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
anyref-globals-interpreter.js [wasm] Support mutable imported anyref globals in interpreter. 2019-04-09 11:52:41 +00:00
anyref-globals.js [wasm][anyref] Introduce anyfunc globals 2019-03-18 12:01:52 +00:00
anyref-interpreter.js [wasm] Support anyref for external calls in interpreter. 2019-04-09 13:42:57 +00:00
anyref-table.js [wasm] Support importing anyref tables 2019-04-30 16:36:20 +00:00
anyref.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
asm-wasm-copy.js
asm-wasm-deopt.js
asm-wasm-exception-in-tonumber.js
asm-wasm-expr.js
asm-wasm-f32.js
asm-wasm-f64.js
asm-wasm-heap.js
asm-wasm-i32.js
asm-wasm-imports.js [asm.js] Split large asm.js test into parts. 2018-08-09 14:02:04 +00:00
asm-wasm-literals.js
asm-wasm-math-intrinsic.js [wasm] Intrinsify math imports 2018-11-26 15:17:51 +00:00
asm-wasm-memory.js Reland "[asmjs] Properly validate asm.js heap sizes" 2018-08-21 09:00:04 +00:00
asm-wasm-names.js
asm-wasm-stack.js
asm-wasm-stdlib.js
asm-wasm-switch.js
asm-wasm-u32.js
asm-wasm.js Reland "[asmjs] Properly validate asm.js heap sizes" 2018-08-21 09:00:04 +00:00
asm-with-wasm-off.js
async-compile.js [wasm] Make error messages deterministic 2019-03-14 15:05:18 +00:00
atomics64-stress.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
atomics-stress.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
atomics.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
bigint-i64-to-imported-js-func.js [wasm] split bigint.js test 2019-03-28 14:48:12 +00:00
bigint.js [wasm] split bigint.js test 2019-03-28 14:48:12 +00:00
bounds-check-64bit.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
bounds-check-turbofan.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
bulk-memory.js [wasm][bulk-memory] Check segment bounds lazily 2019-04-16 22:43:11 +00:00
calls.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
code-space-exhaustion.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
compare-exchange64-stress.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
compare-exchange-stress.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
compilation-hints-async-compilation.js [wasm-hints] Lazy Baseline Compilation 2019-04-29 12:26:26 +00:00
compilation-hints-decoder.js [wasm-hints] Lazy Baseline Compilation 2019-04-29 12:26:26 +00:00
compilation-hints-ignored.js [wasm-hints] Add Tests for Compilation Hints 2019-04-18 10:34:42 +00:00
compilation-hints-interpreter.js [wasm-hints] Fix lazy compilation and validation in interpreter 2019-05-06 13:56:38 +00:00
compilation-hints-lazy-validation.js [wasm-hints] Lazy Validation Flag 2019-04-18 12:43:52 +00:00
compilation-hints-streaming-compilation.js [wasm] Fix Streaming API Error Messages 2019-05-03 13:39:03 +00:00
compilation-hints-streaming-lazy-validation.js [wasm-hints] Lazy Validation Flag 2019-04-18 12:43:52 +00:00
compilation-hints-sync-compilation.js [wasm-hints] Lazy Baseline Compilation 2019-04-29 12:26:26 +00:00
compilation-limits-asm.js
compilation-limits.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
compiled-module-management.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
compiled-module-serialization.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
data-segments.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
disable-trap-handler.js
disallow-codegen.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
divrem-trap.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
empirical_max_memory.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
ensure-wasm-binaries-up-to-date.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
errors.js [wasm] Make error messages deterministic 2019-03-14 15:05:18 +00:00
exceptions-anyref-interpreter.js [wasm] Support reference types on interpreter entry. 2019-04-08 15:48:07 +00:00
exceptions-anyref.js [wasm] Extend encoding of references as exception values. 2019-04-24 11:38:57 +00:00
exceptions-export.js [wasm] Revise compile error messages 2019-02-01 14:36:12 +00:00
exceptions-global-interpreter.js [wasm] Support reference type globals in interpreter. 2019-04-09 09:50:48 +00:00
exceptions-global.js [wasm] Fix reference type global initialization by index. 2019-03-29 12:39:40 +00:00
exceptions-import.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
exceptions-interpreter.js [wasm] Fix lifetime of reference values on interpreter stack. 2019-04-05 12:47:56 +00:00
exceptions-rethrow-interpreter.js [wasm] Fix interpreter stack height for throwing opcode. 2019-04-05 14:04:56 +00:00
exceptions-rethrow.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
exceptions-shared.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
exceptions-simd-interpreter.js [wasm] Extend interpreter exception support to Simd128. 2019-04-05 13:51:06 +00:00
exceptions-simd.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
exceptions-utils.js [wasm][test] Deduplicate assertWasmThrows helper method. 2018-12-10 09:56:17 +00:00
exceptions.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
export-global.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
export-mutable-global.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
export-table.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
expose-wasm.js
ffi-error.js [wasm] Check that sync and async errors match 2019-02-07 16:41:47 +00:00
ffi.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
float-constant-folding.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
function-names.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
function-prototype.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
futex.js [wasm] Rename Atomics Wake operator to Notify. 2019-03-09 01:46:44 +00:00
gc-buffer.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
gc-frame.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
gc-stress.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
globals.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
graceful_shutdown_during_tierup.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
graceful_shutdown.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
grow-memory-detaching.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
grow-memory-in-branch.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
grow-memory-in-call.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
grow-memory-in-loop.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
grow-memory.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
grow-shared-memory.js Reland "[wasm] Add off-by-default runtime flag for growing shared memory" 2019-04-16 00:29:57 +00:00
huge-memory.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
import-function.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
import-memory.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
import-mutable-global.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
import-table.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
incrementer.wasm
indirect-call-non-zero-table.js Reland: [wasm][anyref] Add support of call-indirect for multiple tables 2019-03-21 08:42:48 +00:00
indirect-calls.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
indirect-sig-mismatch.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
indirect-tables.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
instance-gc.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
instance-memory-gc-stress.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
instantiate-module-basic.js [test] Introduce assertThrowsAsync 2019-02-06 15:35:04 +00:00
instantiate-run-basic.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
interpreter-mixed.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
interpreter.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
js-api.js [wasm] Refactor WasmTableObject::Grow 2019-04-30 11:38:26 +00:00
large-offset.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
lazy-compilation.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
liftoff-trap-handler.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
liftoff.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
loop-rotation.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
many-parameters.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
memory_1gb_oob.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
memory_2gb_oob.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
memory_4gb_oob.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
memory-external-call.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
memory-instance-validation.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
memory-size.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
memory.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
module-memory.js [wasm] Remove trap handler fallback 2019-04-17 11:55:36 +00:00
multi-table-element-section.js [wasm] Add test for element section with non-zero table indices 2019-03-14 14:28:06 +00:00
multi-value.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
mutable-globals.js [wasm] Don't allow anyref globals when anyref is not enabled 2019-03-19 18:10:26 +00:00
names.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
origin-trial-flags.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
OWNERS Reduce wasm OWNERS to current team members 2018-10-15 14:47:49 +00:00
parallel_compilation.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
params.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
print-code.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
receiver.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
return-calls.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
serialize-lazy-module.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
shared-memory.js [wasm] change test name 2019-02-21 12:02:47 +00:00
stack.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
stackwalk.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
start-function.js [test] Introduce assertThrowsAsync 2019-02-06 15:35:04 +00:00
streaming-api.js [wasm] Fix Streaming API Error Messages 2019-05-03 13:39:03 +00:00
streaming-compile.js [wasm][test] Remove default --wasm-async-compilation flag 2018-11-09 17:29:17 +00:00
streaming-error-position.js [wasm] Speed up WasmModuleBuilder 2019-03-07 14:51:52 +00:00
streaming-trap-location.js [wasm][test] Remove default --wasm-async-compilation flag 2018-11-09 17:29:17 +00:00
table-access.js [wasm][anyref] Implement table.[get|set] wasm instructions 2019-03-18 11:04:07 +00:00
table-copy.js [wasm] Implement bulk memory table.copy in interpreter 2019-03-21 16:26:20 +00:00
table-get.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
table-grow-from-wasm.js [wasm] Implement the table.size instruction 2019-05-03 09:50:43 +00:00
table-grow.js [wasm] Allow multi-table initialization in the wasm-module-builder 2019-03-13 10:39:41 +00:00
table-limits.js [wasm] correct Table limit 2019-03-05 15:22:20 +00:00
table.js [wasm] correct Table limit 2019-03-05 15:22:20 +00:00
test-wasm-module-builder.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
tier-up-testing-flag.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
trap-location.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
type-reflection-with-anyref.js [wasm] Add type function to WebAssembly.Global 2019-03-15 05:16:29 +00:00
type-reflection.js [wasm] Add minimum to MemoryDescriptor and TableDescriptor 2019-03-15 06:14:39 +00:00
unicode-validation.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
unicode.js [wasm] Make error messages deterministic 2019-03-14 15:05:18 +00:00
unreachable-validation.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
unreachable.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
user-properties-common.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
user-properties-constructed.js
user-properties-exported.js
user-properties-module.js
user-properties-reexport.js
verify-module-basic-errors.js
wasm-api-overloading.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
wasm-default.js
wasm-math-intrinsic.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
wasm-module-builder.js [wasm] Implement the table.size instruction 2019-05-03 09:50:43 +00:00
wasm-object-api.js
worker-interpreter.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
worker-memory.js [d8] Update new Worker API to match the Web API 2018-09-20 00:10:28 +00:00
worker-module.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00