• Clemens Hammacher's avatar
    [wasm] [debug] Implement calling imported wasm functions · c39c6eba
    Clemens Hammacher authored
    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: 's avatarBen Titzer <titzer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47195}
    c39c6eba
Name
Last commit
Last update
..
blink_tests Loading commit data...
cfi Loading commit data...
dev Loading commit data...
foozzie Loading commit data...
gcmole Loading commit data...
generate_shim_headers Loading commit data...
ignition Loading commit data...
jsfunfuzz Loading commit data...
link_clicker.extension Loading commit data...
luci-go Loading commit data...
mb Loading commit data...
memory Loading commit data...
msan Loading commit data...
ninja Loading commit data...
perf Loading commit data...
profview Loading commit data...
profviz Loading commit data...
release Loading commit data...
sanitizers Loading commit data...
sodium Loading commit data...
testrunner Loading commit data...
turbolizer Loading commit data...
ubsan Loading commit data...
unittests Loading commit data...
v8.xcodeproj Loading commit data...
vim Loading commit data...
visual_studio Loading commit data...
wasm Loading commit data...
BUILD.gn Loading commit data...
DEPS Loading commit data...
OWNERS Loading commit data...
SourceMap.js Loading commit data...
android-build.sh Loading commit data...
android-ll-prof.sh Loading commit data...
android-run.py Loading commit data...
android-sync.sh Loading commit data...
bash-completion.sh Loading commit data...
callstats.html Loading commit data...
callstats.py Loading commit data...
check-inline-includes.sh Loading commit data...
check-static-initializers.gyp Loading commit data...
check-static-initializers.isolate Loading commit data...
check-static-initializers.sh Loading commit data...
check-unused-bailouts.sh Loading commit data...
codemap.js Loading commit data...
compare-table-gen.js Loading commit data...
concatenate-files.py Loading commit data...
consarray.js Loading commit data...
cpu.sh Loading commit data...
cross_build_gcc.sh Loading commit data...
csvparser.js Loading commit data...
detect-builtins.js Loading commit data...
disasm.py Loading commit data...
draw_instruction_graph.sh Loading commit data...
dump-cpp.py Loading commit data...
dumpcpp-driver.js Loading commit data...
dumpcpp.js Loading commit data...
eval_gc_nvp.py Loading commit data...
eval_gc_time.sh Loading commit data...
find-commit-for-patch.py Loading commit data...
find_depot_tools.py Loading commit data...
freebsd-tick-processor Loading commit data...
fuzz-harness.sh Loading commit data...
gc-nvp-to-csv.py Loading commit data...
gc-nvp-trace-processor.py Loading commit data...
gc_nvp_common.py Loading commit data...
gcov.sh Loading commit data...
gdb-v8-support.py Loading commit data...
gdbinit Loading commit data...
gen-inlining-tests.py Loading commit data...
gen-postmortem-metadata.py Loading commit data...
generate-builtins-tests.py Loading commit data...
generate-ten-powers.scm Loading commit data...
grokdump.py Loading commit data...
gyp_flag_compare.py Loading commit data...
ic-explorer.html Loading commit data...
ic-processor Loading commit data...
ic-processor-driver.js Loading commit data...
ic-processor.js Loading commit data...
isolate_driver.py Loading commit data...
js2c.py Loading commit data...
jsmin.py Loading commit data...
linux-tick-processor Loading commit data...
ll_prof.py Loading commit data...
lldb_commands.py Loading commit data...
lldbinit Loading commit data...
logreader.js Loading commit data...
mac-nm Loading commit data...
mac-tick-processor Loading commit data...
mingw-generate-makefiles.sh Loading commit data...
objdump-v8 Loading commit data...
parser-shell.cc Loading commit data...
parser-shell.gyp Loading commit data...
perf-compare.py Loading commit data...
perf-to-html.py Loading commit data...
plot-timer-events Loading commit data...
presubmit.py Loading commit data...
process-heap-prof.py Loading commit data...
profile.js Loading commit data...
profile_view.js Loading commit data...
run-deopt-fuzzer.gyp Loading commit data...
run-deopt-fuzzer.isolate Loading commit data...
run-deopt-fuzzer.py Loading commit data...
run-llprof.sh Loading commit data...
run-perf.sh Loading commit data...
run-tests.py Loading commit data...
run-valgrind.gyp Loading commit data...
run-valgrind.isolate Loading commit data...
run-valgrind.py Loading commit data...
run.py Loading commit data...
run_perf.py Loading commit data...
shell-utils.h Loading commit data...
splaytree.js Loading commit data...
stats-viewer.py Loading commit data...
test-server.py Loading commit data...
tick-processor.html Loading commit data...
tickprocessor-driver.js Loading commit data...
tickprocessor.js Loading commit data...
trace-maps-processor.py Loading commit data...
try_perf.py Loading commit data...
turbolizer-perf.py Loading commit data...
v8-rolls.sh Loading commit data...
v8heapconst.py Loading commit data...
verify_source_deps.py Loading commit data...
whitespace.txt Loading commit data...
windows-tick-processor.bat Loading commit data...