v8/test/mjsunit/wasm
Ben Smith 6a50560650 [wasm] Implement WebAssembly.Global import/export
The mutable-globals proposal spec allows importing as Numbers or
WebAssembly.Global values, but always exports as WebAssembly.Global.

Since the value is always boxed, we can also import/export i64 values.

This CL also includes support for export of mutable globals. Since the
underlying ArrayBuffer that stores the global's value is shared between
the module and the WebAssembly.Global object, all that needs to be done
is remove the validation check.

Bug: v8:7625
Change-Id: I24d763e3bc193d229a7cc33b2f2690a473c6f2bc
Reviewed-on: https://chromium-review.googlesource.com/1018406
Commit-Queue: Ben Smith <binji@chromium.org>
Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
Cr-Commit-Position: refs/heads/master@{#52789}
2018-04-25 16:54:06 +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.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
asm-wasm-literals.js
asm-wasm-names.js
asm-wasm-stack.js [asm.js] Fix names for forward declared functions. 2017-04-04 07:55:54 +00:00
asm-wasm-stdlib.js
asm-wasm-switch.js
asm-wasm-u32.js
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 Revert "[test] Refactor assertPromiseResult" 2017-10-25 14:42:25 +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 [wasm] Merge the WasmContext into WasmInstanceObject 2018-04-06 12:13:26 +00:00
compiled-module-serialization.js [wasm] Fix cloned deserialization of JS-to-WASM wrappers. 2018-01-23 12:38:47 +00:00
data-segments.js
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
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] Limit output length of user-provided strings 2017-08-04 09:20:34 +00:00
export-mutable-global.js [wasm] Implement WebAssembly.Global import/export 2018-04-25 16:54:06 +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
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
gc-stress.js [wasm] Reduce run-time of GC stress test. 2017-07-14 16:02:42 +00:00
globals.js [wasm] Store the globals_start in WasmContext. 2017-10-16 09:35:47 +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] Move indirect function tables into the WasmContext 2018-02-21 12:29:21 +00:00
import-memory.js [wasm] Fix memory initialization on instantiate 2017-09-20 22:52:31 +00:00
import-mutable-global.js [wasm] Implement WebAssembly.Global import/export 2018-04-25 16:54:06 +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] Remove temporary table immutability workaround 2018-04-16 18:39:33 +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][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 [wasm] Remove default value for is_liftoff 2018-02-22 13:59:17 +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 Reland "[wasm] use allocation tracker to track reserved address space" 2018-01-08 18:53:14 +00:00
multi-value.js [wasm] Int64 lowering for return values 2017-10-27 11:34:14 +00:00
mutable-globals.js [wasm] Implement WebAssembly.Global.value{,Of} 2018-04-09 21:00:43 +00:00
names.js
OWNERS Remove mtrofin and rossberg from OWNERS 2018-02-15 23:48:43 +00:00
parallel_compilation.js
params.js
receiver.js
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] Use pending exceptions consistently 2017-06-29 10:23:45 +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-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 Reland "Reland "[d8][wasm] Test wasm compilation completion"" 2018-04-10 08:24:27 +00:00
wasm-object-api.js
worker-memory.js Fix WebAssembly.Memory deserialization in more complex objects 2017-10-20 01:18:13 +00:00