v8/test/mjsunit/wasm
Enrico Bacis d74ec7efa8 [wasm] Add tests for grow_memory inside functions
This CL introduces 6 tests that verify that the effects of a grow_memory
instruction executed inside a function are visible also from the caller of
the function.

The tests verify that:

 * the current_memory instruction returns the correct value after
 returning from a function that grew memory;

 * accessing a memory page that has been created inside a function does
 not trap in the caller;

 * when a function grows the memory and then store something in the grown
 memory, the caller always reads from the grown memory. This checks that
 the memory start address gets updated in the caller (the memory buffer
 could in fact be relocated by the grow_memory instruction).

These tests are implemented for direct and indirect function calls.

R=ahaas@chromium.org,clemensh@chromium.org

Change-Id: Iac8db0fa7a6dd6f530e090af5423fc165d87e863
Reviewed-on: https://chromium-review.googlesource.com/616150
Commit-Queue: Enrico Bacis <enricobacis@google.com>
Reviewed-by: Andreas Haas <ahaas@chromium.org>
Reviewed-by: Deepti Gandluri <gdeepti@chromium.org>
Cr-Commit-Position: refs/heads/master@{#47398}
2017-08-17 12:35:51 +00:00
..
embenchen
adapter-frame.js
add-getters.js
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
asm-wasm-f64.js
asm-wasm-heap.js
asm-wasm-i32.js
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
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] Ensure coercion of imports is non-observable. 2017-06-20 13:55:35 +00:00
asm-with-wasm-off.js Fix test to not teach ClusterFuzz ugly tricks. 2017-02-28 10:25:50 +00:00
async-compile.js Fix common misspellings 2017-08-02 09:35:28 +00:00
atomics.js [wasm] Refactor mjsunit atomics tests into smaller tests 2017-08-14 23:46:10 +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 "Revert "[wasm] Remove override-ability from async compile and instantiate."" 2017-05-24 15:55:04 +00:00
compiled-module-management.js
compiled-module-serialization.js [wasm] Fix serialization after instantiation 2017-03-29 21:22:57 +00:00
data-segments.js
divrem-trap.js
ensure-wasm-binaries-up-to-date.js
errors.js [wasm] Test more error messages 2017-07-25 08:29:13 +00:00
exceptions.js Reland "Start migration of try/throw/catch to match proposal." 2017-08-02 22:35:07 +00:00
export-global.js [wasm] Limit output length of user-provided strings 2017-08-04 09:20:34 +00:00
export-table.js [wasm] Fix error output for duplicate exports 2017-07-10 09:53:32 +00:00
ffi-error.js [wasm] Fix wasm to js wrapper on ia32 for i64 return 2017-03-15 16:14:19 +00:00
ffi.js
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
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] Inspect right control frames for unreachable flag 2017-02-16 14:12:01 +00:00
graceful_shutdown.js [wasm] Remove the state from tasks of an AsyncCompileJob 2017-06-13 14:26:51 +00:00
grow-memory-in-call.js [wasm] Add tests for grow_memory inside functions 2017-08-17 12:35:51 +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-memory.js [wasm] Fix grow-memory on exported memory 2017-08-17 10:01:53 +00:00
import-table.js
incrementer.wasm [wasm] Accept version 0x1 binaries. 2017-02-09 02:09:47 +00:00
indirect-calls.js [wasm] Fix test utils and tests 2017-03-22 14:04:10 +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] Update signature map on indirect calls 2017-07-14 08:42:40 +00:00
instance-gc.js
instance-memory-gc-stress.js
instantiate-module-basic.js Revert "Revert "Reland "Introducing an event loop mechanism for d8.""" 2017-05-10 18:34:10 +00:00
instantiate-run-basic.js [wasm] instantiate expressed in terms of compile 2017-04-18 01:31:16 +00:00
interpreter-mixed.js [wasm] [debug] Implement calling imported wasm functions 2017-08-07 12:31:18 +00:00
interpreter.js [wasm] [cleanup] Avoid shouting WASM 2017-06-09 16:24:19 +00:00
js-api.js [wasm] Turn instance exports into an accessor 2017-08-03 16:49:21 +00:00
jsapi-harness.js [wasm] Turn instance exports into an accessor 2017-08-03 16:49:21 +00:00
large-offset.js [wasm] Increase WebAssembly.Memory maximum size to 2GB 2017-06-16 03:35:09 +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
memory.js [wasm] Add tests for grow_memory inside functions 2017-08-17 12:35:51 +00:00
module-memory.js
names.js
OWNERS Add eholk to Wasm-related OWNERS files 2017-08-10 18:58:00 +00:00
parallel_compilation.js
params.js
receiver.js
shared-memory.js [wasm] WebAssembly.Memory constructor should accept SharedArrayBuffers. 2017-07-10 22:37:48 +00:00
stack.js [wasm] [cleanup] Avoid shouting WASM 2017-06-09 16:24:19 +00:00
stackwalk.js
start-function.js [wasm] Use pending exceptions consistently 2017-06-29 10:23:45 +00:00
table.js [wasm] Allow full u32 range for table maximum in WebAssembly.Table constructor. 2017-07-10 11:18:45 +00:00
test-import-export-wrapper.js
test-wasm-module-builder.js
trap-location.js
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] Inspect right control frames for unreachable flag 2017-02-16 14:12:01 +00:00
unreachable.js
user-properties.js [wasm] Fix user properties for exported wasm functions and add extensive tests. 2017-07-19 17:06:37 +00:00
verify-module-basic-errors.js
wasm-api-overloading.js [wasm] Remove support for overloading async APIs. 2017-06-06 05:47:03 +00:00
wasm-constants.js [wasm] Fix grow-memory on exported memory 2017-08-17 10:01:53 +00:00
wasm-default.js
wasm-module-builder.js [wasm][test] Avoid stack overflow that can happen with spread call to Array.push. 2017-08-03 12:33:28 +00:00
wasm-object-api.js