v8/test/mjsunit/wasm
Clemens Hammacher e0dc3d2962 [wasm] Reject an exception in the start function on the promise
We assumed that if the ErrorThrower is empty after instantiation, then
instantiation succeeded and an instance exists which we can return.
However, if the start function throws, no instance exists, which caused
a crash. With this CL we handle execeptions thrown by the start
function correctly.


R=clemensh@chromium.org

Bug: chromium:848966
Change-Id: I51dc94e6bc563aa4a4b88c44a14e831af913fbd8
Reviewed-on: https://chromium-review.googlesource.com/1092234
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Cr-Commit-Position: refs/heads/master@{#53687}
2018-06-13 09:01:48 +00:00
..
embenchen
adapter-frame.js [wasm] Rename wasm::LocalType to wasm::ValueType and kAst* to kWasm* 2016-12-21 13:43:00 +00:00
add-getters.js [wasm] Freeze exports object 2016-12-19 18:45:07 +00:00
anyref.js [wasm][anyref] Implement ref.is_null 2018-04-10 07:28:37 +00:00
asm-wasm-copy.js
asm-wasm-deopt.js
asm-wasm-exception-in-tonumber.js [asm.js] Fix source positions of ToNumber conversions. 2017-04-05 12:34:55 +00:00
asm-wasm-expr.js [asm.js] Fix source positions in for-statement parsing. 2017-04-19 08:53:57 +00:00
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 [wasm] [asm.js] Fix various asm.js issues. 2016-09-28 16:37:04 +00:00
asm-wasm-literals.js [wasm][asm.js] Fix asm.js in tests to be more strictly valid. 2017-03-14 20:17:04 +00:00
asm-wasm-names.js [wasm] Honor the names section for modules coming from asm.js. 2016-12-06 14:31:51 +00:00
asm-wasm-stack.js [asm.js] Fix names for forward declared functions. 2017-04-04 07:55:54 +00:00
asm-wasm-stdlib.js [wasm] Remove obsolete %IsNotAsmWasmCode predicate. 2016-12-09 11:56:05 +00:00
asm-wasm-switch.js
asm-wasm-u32.js [wasm] [asm.js] Fix various asm.js issues. 2016-09-28 16:37:04 +00:00
asm-wasm.js [asm.js] Fix continue target in for loops 2017-12-18 16:29:27 +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 [wasm] Create module object in async compilation earlier. 2018-05-09 07:54:56 +00:00
atomics.js [wasm] Speed up mjsunit/atomics.js 2017-10-25 11:38:46 +00:00
bounds-check-64bit.js [wasm] Change the memory access offset to pointer size 2017-10-18 13:41:04 +00:00
calls.js
compilation-limits-asm.js [wasm] [cleanup] Avoid shouting WASM 2017-06-09 16:24:19 +00:00
compilation-limits.js Revert "[test] Refactor assertPromiseResult" 2017-10-25 14:42:25 +00:00
compiled-module-management.js Reland "[wasm] Maintain link from Instance to Module." 2018-05-04 10:16:58 +00:00
compiled-module-serialization.js [wasm] Make stack check independent of the Isolate. 2018-06-04 11:24:17 +00:00
data-segments.js [wasm] Rename wasm::LocalType to wasm::ValueType and kAst* to kWasm* 2016-12-21 13:43:00 +00:00
default-liftoff-setting.js Reland "[test] Add Liftoff variant" 2017-11-21 12:10:53 +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 Add capability to handle CSP 'wasm-eval' in V8 2017-11-09 00:40:42 +00:00
divrem-trap.js [mjsunit] Change assertThrows such that it can check the exception message. 2016-11-28 10:26:44 +00:00
ensure-wasm-binaries-up-to-date.js
errors.js [wasm] Improve trap messages 2018-02-02 11:27:11 +00:00
exceptions.js Add capability of throwing values in WASM 2017-09-25 16:58:19 +00:00
export-global.js [wasm] Enable mutable-global by default 2018-06-12 23:08:48 +00:00
export-mutable-global.js [wasm] Fix for exporting imported mutable globals 2018-06-12 21:26:27 +00:00
export-table.js [wasm] Fix error output for duplicate exports 2017-07-10 09:53:32 +00:00
expose-wasm.js [asmjs] --validate-asm should not expose the WASM API. 2017-09-04 13:31:32 +00:00
ffi-error.js [wasm] Store the globals_start in WasmContext. 2017-10-16 09:35:47 +00:00
ffi.js [wasm] Don't call constructors directly from wasm2js wrappers 2018-03-29 11:48:32 +00:00
float-constant-folding.js [wasm] Do not fold f32-to-f64 and f64-to-f32 conversions. 2017-02-03 12:05:29 +00:00
function-names.js [wasm] Implement extensible name section 2017-04-07 16:31:47 +00:00
function-prototype.js [wasm] Fix prototype property of exported functions 2018-02-28 09:14:57 +00:00
gc-buffer.js [wasm] [cleanup] Avoid shouting WASM 2017-06-09 16:24:19 +00:00
gc-frame.js [wasm] Rename wasm::LocalType to wasm::ValueType and kAst* to kWasm* 2016-12-21 13:43:00 +00:00
gc-stress.js [wasm] Reduce run-time of GC stress test. 2017-07-14 16:02:42 +00:00
globals.js [wasm] Enable mutable-global by default 2018-06-12 23:08:48 +00:00
graceful_shutdown.js [d8] Add no-wait-for-wasm flag 2018-03-16 15:35:27 +00:00
grow-memory-detaching.js [wasm] grow_memory(0) should detach the underlying ArrayBuffer 2018-01-16 19:07:59 +00:00
grow-memory-in-branch.js [wasm] Add tests for grow_memory in conditional branches 2017-08-19 10:33:11 +00:00
grow-memory-in-call.js [wasm] Add tests for grow_memory in functions inside loops 2017-08-29 11:01:37 +00:00
grow-memory-in-loop.js [wasm] Add tests for grow_memory in loops 2017-08-21 09:42:34 +00:00
grow-memory.js [wasm] Add tests for grow_memory inside functions 2017-08-17 12:35:51 +00:00
huge-memory.js [wasm] add a test case for 3GB memory 2017-04-26 05:09:03 +00:00
import-function.js [wasm] Use correct instance when calling start function 2018-05-15 16:17:29 +00:00
import-memory.js [wasm] Fix memory initialization on instantiate 2017-09-20 22:52:31 +00:00
import-mutable-global.js [wasm] Fix for exporting imported mutable globals 2018-06-12 21:26:27 +00:00
incrementer.wasm [wasm] Accept version 0x1 binaries. 2017-02-09 02:09:47 +00:00
indirect-calls.js [wasm] Fix tables bounds check, add Table.Grow tests 2017-09-05 18:24:39 +00:00
indirect-sig-mismatch.js [wasm] More extensive indirect dispatch signature mismatch tests. 2017-07-24 19:21:28 +00:00
indirect-tables.js [wasm] Fix target instance for indirect calls to imports 2018-04-27 08:27:56 +00:00
instance-gc.js [wasm] Refactor import handling for 0xC. 2016-10-06 15:43:22 +00:00
instance-memory-gc-stress.js [wasm] Implement correct 2-level namespace for imports. 2016-12-20 15:32:56 +00:00
instantiate-module-basic.js Revert "[test] Refactor assertPromiseResult" 2017-10-25 14:42:25 +00:00
instantiate-run-basic.js Revert "[test] Refactor assertPromiseResult" 2017-10-25 14:42:25 +00:00
interpreter-mixed.js [wasm] [debug] Implement calling imported wasm functions 2017-08-07 12:31:18 +00:00
interpreter.js [wasm][interpreter] Fix indirect calls to other instances 2018-02-22 19:51:41 +00:00
js-api.js [wasm] Disallow calling wasm constructors without new. 2017-11-20 17:34:51 +00:00
jsapi-harness.js [wasm] Update spec tests 2018-02-14 14:17:44 +00:00
large-offset.js [wasm] Increase WebAssembly.Memory maximum size to 2GB 2017-06-16 03:35:09 +00:00
lazy-compilation.js [wasm] Add "freeze" flag to test lazy compilation 2017-11-30 08:54:12 +00:00
liftoff-trap-handler.js [liftoff] fix statically out of bounds memory access with trap handlers 2018-03-23 19:24:16 +00:00
liftoff.js [Liftoff] Stage Liftoff and tier up behind --future 2018-05-04 11:48:18 +00:00
many-parameters.js [Liftoff] Implement direct calls 2018-01-09 10:54:56 +00:00
memory-external-call.js [wasm] Store the globals_start in WasmContext. 2017-10-16 09:35:47 +00:00
memory-instance-validation.js [wasm] Use WeakFixedArray for list of instances sharing a WasmMemoryObject. 2017-07-07 13:52:21 +00:00
memory-size.js Reland "[wasm] Fix page size constant + test limits on max pages." 2018-01-19 10:19:32 +00:00
memory.js [wasm] Add tests for grow_memory inside functions 2017-08-17 12:35:51 +00:00
module-memory.js [wasm] Fall back on bounds checks when guarded memory unavailable 2018-06-07 01:29:53 +00:00
multi-value.js [wasm] Int64 lowering for return values 2017-10-27 11:34:14 +00:00
mutable-globals.js [wasm] Rename type to value in Global constructor 2018-05-30 21:08:03 +00:00
names.js [wasm] Errors in names section do not fail the whole module. 2017-01-24 13:13:26 +00:00
OWNERS Remove mtrofin and rossberg from OWNERS 2018-02-15 23:48:43 +00:00
parallel_compilation.js
params.js [wasm] Rename wasm::LocalType to wasm::ValueType and kAst* to kWasm* 2016-12-21 13:43:00 +00:00
print-code.js [wasm] Add test for printing wasm code after deserialization 2018-06-05 19:15:15 +00:00
receiver.js [wasm] Implement correct 2-level namespace for imports. 2016-12-20 15:32:56 +00:00
serialize-lazy-module.js [wasm] Fix serialization of lazily compiled modules 2018-06-12 17:07:36 +00:00
shared-memory.js [wasm] Allocate SAB when memory is shared 2017-12-21 01:01:32 +00:00
stack.js [wasm] Use right data type for storing error location 2017-08-31 11:07:25 +00:00
stackwalk.js [wasm] Implement correct 2-level namespace for imports. 2016-12-20 15:32:56 +00:00
start-function.js [wasm] Reject an exception in the start function on the promise 2018-06-13 09:01:48 +00:00
streaming-compile.js [wasm] Streaming compilation for WebAssembly. 2017-09-15 06:36:25 +00:00
streaming-error-position.js Revert "[test] Refactor assertPromiseResult" 2017-10-25 14:42:25 +00:00
streaming-trap-location.js [wasm] Streaming compilation for WebAssembly. 2017-09-15 06:36:25 +00:00
table-grow.js [wasm] Merge the WasmContext into WasmInstanceObject 2018-04-06 12:13:26 +00:00
table.js [wasm] get length at the right time Table.p.grow 2017-08-28 11:27:46 +00:00
test-wasm-module-builder.js [wasm] Disallow calling wasm constructors without new. 2017-11-20 17:34:51 +00:00
trap-handler-fallback.js [wasm] Fall back on bounds checks when guarded memory unavailable 2018-06-07 01:29:53 +00:00
trap-location.js [builtins] implement RunMicrotasks pump as a code stub 2017-12-04 17:55:29 +00:00
unicode-validation.js [wasm] Also kBadChar is a valid utf8 character 2017-05-23 09:28:06 +00:00
unicode.js [wasm] Fix unicode names occuring in error messages 2017-06-26 15:36:34 +00:00
unreachable-validation.js [wasm] Decoder should narrow unreachable types on the stack. 2017-08-30 11:49:16 +00:00
unreachable.js
user-properties-common.js [wasm/test] Split test/mjsunit/wasm/user-properties.js into smaller tests. 2017-10-27 10:37:55 +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] Reduce usage of old Wasm.* API in JS tests. 2016-10-13 16:55:57 +00:00
wasm-api-overloading.js Revert "[test] Refactor assertPromiseResult" 2017-10-25 14:42:25 +00:00
wasm-constants.js [wasm][anyref] Implement ref.is_null 2018-04-10 07:28:37 +00:00
wasm-default.js [wasm] Enable WASM by default (--expose-wasm=true). 2017-01-12 12:04:35 +00:00
wasm-module-builder.js [wasm] Implement importing mutable globals 2018-04-25 18:57:48 +00:00
wasm-object-api.js [wasm] Remove the "Wasm" object. 2016-10-26 16:58:53 +00:00
worker-memory.js Fix WebAssembly.Memory deserialization in more complex objects 2017-10-20 01:18:13 +00:00