v8/test/mjsunit/wasm
Clemens Hammacher c39c6eba00 [wasm] [debug] Implement calling imported wasm functions
The interpreter was not able to call imported wasm functions (hitting
UNIMPLEMENTED). This CL fixes this by creating a "CWasmEntry", which is
signature-specific. It has JS linkage and receives the wasm code object
to call and a buffer containing all arguments (similar to the
interpreter entry). It loads all arguments from the buffer and calls the
given code object.
The c-wasm-entry code objects are cached per instance, such that we
only create them once per signature.

These wasm entry stubs will also allow us to call back to compiled code
from the interpreter, which we might want to do to reduce the slowdown
of executing wasm for debugging.

R=titzer@chromium.org

Bug: chromium:735792
Change-Id: I7fecec3a7bec62a9de40fff115b684759b12a28b
Reviewed-on: https://chromium-review.googlesource.com/600308
Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
Reviewed-by: Ben Titzer <titzer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#47195}
2017-08-07 12:31:18 +00:00
..
embenchen
adapter-frame.js
add-getters.js
asm-wasm-copy.js
asm-wasm-deopt.js
asm-wasm-exception-in-tonumber.js
asm-wasm-expr.js
asm-wasm-f32.js
asm-wasm-f64.js
asm-wasm-heap.js
asm-wasm-i32.js
asm-wasm-literals.js
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] Ensure coercion of imports is non-observable. 2017-06-20 13:55:35 +00:00
asm-with-wasm-off.js
async-compile.js Fix common misspellings 2017-08-02 09:35:28 +00:00
atomics.js [wasm] Implement atomic logical BinOps 2017-08-04 19:04:12 +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
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
ffi.js
float-constant-folding.js
function-names.js
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
graceful_shutdown.js [wasm] Remove the state from tasks of an AsyncCompileJob 2017-06-13 14:26:51 +00:00
grow-memory.js [wasm] Increase WebAssembly.Memory maximum size to 2GB 2017-06-16 03:35:09 +00:00
huge-memory.js
import-memory.js [wasm] Add test for growing exported memory past maximum 2017-08-01 08:03:22 +00:00
import-table.js
incrementer.wasm
indirect-calls.js
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
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
module-memory.js
names.js
OWNERS
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
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] Implement atomic logical BinOps 2017-08-04 19:04:12 +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