v8/test/mjsunit/wasm
Andreas Haas 1408e12772 [wasm] Check the isolate if WebAssembly threads are enabled.
With the origin trial for WebAssembly threads, threads can be turned on
and off by the embedder depending on the context we are currently in.
With this CL we call the embedder callback stored on the isolate to
determine whether threads are enabled in the current context or not.

Design decision:
I decided to extend the {WasmFeaturesFromIsolate} function to ask the
embedder if WebAssembly threads are enabled. This is the function which
defines dynamically which features are turned on. It would be awkward
to have two such functions, one which calls the embedder and one which
does not.
A downside is that in WasmJs::Install the embedder does not seem to be
ready to be called. That's why I changed the code there to call
{WasmFeaturesFromFlags} instead.

R=titzer@chromium.org, mstarzinger@chromium.org

Bug: chromium:868844
Change-Id: I6bfa89960a54cec71992756e3717bbb3a9fe195e
Reviewed-on: https://chromium-review.googlesource.com/1169180
Commit-Queue: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Ben Titzer <titzer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#55076}
2018-08-13 09:16:33 +00:00
..
embenchen
adapter-frame.js
add-getters.js
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-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-memory.js [asm.js] Split large asm.js test into parts. 2018-08-09 14:02: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 [asm.js] Split large asm.js test into parts. 2018-08-09 14:02: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 [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] Support 4GiB memories in Liftoff 2018-07-27 14:20:00 +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 [wasm] Remove {WasmCompiledModule} object type. 2018-06-27 14:02:51 +00:00
compiled-module-serialization.js [wasm] Fix serialization of {WasmCode} with jump tables. 2018-07-02 14:41:13 +00:00
data-segments.js
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
empirical_max_memory.js [wasm] Prepare to support 4GiB memories 2018-07-24 13:55:43 +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] During instantiation, pending_exceptions dominate new exceptions 2018-08-07 10:44:12 +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
function-names.js [wasm] Use "wasm-function[i]" for wasm function name 2018-07-31 11:20:44 +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
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_during_tierup.js [wasm] Remove redundant cancelling of compile tasks 2018-08-01 12:21:57 +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
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
instance-memory-gc-stress.js
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] Fix importing exported function in interpreter 2018-07-06 11:22:01 +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 [wasm] Prepare enabling liftoff by default on ia32 and x64 2018-06-22 11:06:26 +00:00
many-parameters.js [Liftoff] Implement direct calls 2018-01-09 10:54:56 +00:00
memory_1gb_oob.js [wasm] Support 4GiB memories in Liftoff 2018-07-27 14:20:00 +00:00
memory_2gb_oob.js [wasm] Support 4GiB memories in Liftoff 2018-07-27 14:20:00 +00:00
memory_4gb_oob.js [wasm] Support 4GiB memories in Liftoff 2018-07-27 14:20:00 +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
origin-trial-flags.js [wasm] Check the isolate if WebAssembly threads are enabled. 2018-08-13 09:16:33 +00:00
OWNERS Remove mtrofin and rossberg from OWNERS 2018-02-15 23:48:43 +00:00
parallel_compilation.js
params.js
print-code.js [wasm] Add test for printing wasm code after deserialization 2018-06-05 19:15:15 +00:00
receiver.js
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
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
tier-up-testing-flag.js [wasm][fuzzer] Test combinations of Turbofan and Liftoff 2018-07-12 12:56:30 +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-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-module-builder.js [wasm] Implement importing mutable globals 2018-04-25 18:57:48 +00:00
wasm-object-api.js
worker-memory.js [wasm] postMessage of WebAssembly.Module in d8 2018-06-28 16:54:06 +00:00
worker-module.js Revert "[wasm] Temporarily disable --wasm-shared-engine test." 2018-07-26 15:03:37 +00:00