v8/test/mjsunit/wasm
Clemens Hammacher 41aa8a6082 [wasm] Speed up WasmModuleBuilder
Emitting bytes to the Uint8Array directly speeds up generation of
binaries enormously.
On the limits-any.js spec test (which creates huge modules), the
execution time of an optdebug build reduces from 286 seconds to 61
seconds.

R=titzer@chromium.org
CC=​ahaas@chromium.org, ssauleau@igalia.com

Change-Id: I5b473b7dc7b0853e54d2406f3db3658bb2abed40
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1508352
Reviewed-by: Ben Titzer <titzer@chromium.org>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#60096}
2019-03-07 14:51:52 +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.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
anyref-globals.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +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 [wasm] Enable more asm.js tests 2018-02-21 15:42:22 +00:00
asm-wasm-f64.js [wasm] Enable more asm.js tests 2018-02-21 15:42:22 +00:00
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 [wasm] Honor AllowCodegenFromStrings() for all WASM compile types. 2017-10-06 08:50:51 +00:00
async-compile.js [test] Introduce assertThrowsAsync 2019-02-06 15:35:04 +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.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +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] Fix out-of-bound behavior for bulk ops 2019-03-05 20:36:18 +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-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] merge js constants file in module-builder 2019-01-30 22:10:34 +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 [wasm] Enable trap handlers by default in D8 on Linux x64 2017-09-25 17:43:33 +00:00
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] Check that sync and async errors match 2019-02-07 16:41:47 +00:00
exceptions-anyref.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
exceptions-export.js [wasm] Revise compile error messages 2019-02-01 14:36:12 +00:00
exceptions-import.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +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.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] fix alignment issue for WasmI64AtomicWait 2019-02-20 03:19:27 +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] Lazy update instances on a shared Memory.Grow" 2019-03-06 18:41:19 +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] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
incrementer.wasm
indirect-calls.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +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] merge js constants file in module-builder 2019-01-30 22:10:34 +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] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
js-api.js [wasm] correct Table limit 2019-03-05 15:22:20 +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] merge js constants file in module-builder 2019-01-30 22:10:34 +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] Remove --experimental-wasm-mut-global flag 2019-01-10 09:40:56 +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
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-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-copy.js [wasm] Fix out-of-bound behavior for bulk ops 2019-03-05 20:36:18 +00:00
table-grow.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
table-init.js [wasm] Fix out-of-bound behavior for bulk ops 2019-03-05 20:36:18 +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-handler-fallback.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
unicode-validation.js [wasm] merge js constants file in module-builder 2019-01-30 22:10:34 +00:00
unicode.js [wasm] Check that sync and async errors match 2019-02-07 16:41:47 +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 [wasm/test] Split test/mjsunit/wasm/user-properties.js into smaller tests. 2017-10-27 10:37:55 +00:00
user-properties-exported.js [wasm/test] Split test/mjsunit/wasm/user-properties.js into smaller tests. 2017-10-27 10:37:55 +00:00
user-properties-module.js [wasm/test] Split test/mjsunit/wasm/user-properties.js into smaller tests. 2017-10-27 10:37:55 +00:00
user-properties-reexport.js [wasm/test] Split test/mjsunit/wasm/user-properties.js into smaller tests. 2017-10-27 10:37:55 +00:00
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] Speed up WasmModuleBuilder 2019-03-07 14:51:52 +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