• Clemens Hammacher's avatar
    [wasm] Lazy-compilation: Fix patching of wasm-to-wasm wrappers · efed6ba9
    Clemens Hammacher authored
    Cross-instance calls call through a wasm-to-wasm stub, which
    tail-calls and hence does not show up on the stack. It was not being
    patched so far, leading to repeatedly calling through the
    WasmCompileLazy stub. Even though this did not crash, it resulted in
    significant overhead.
    This CL fixes this and also adds checks to ensure that we patch at
    least one call site whenever we execute the WasmCompileLazy stub.
    
    R=titzer@chromium.org
    
    Bug: chromium:788441, v8:5991
    Change-Id: I1c2cd52497c577252a64dbf1cfa92d2f2e60b06c
    Reviewed-on: https://chromium-review.googlesource.com/794132Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#49709}
    efed6ba9
Name
Last commit
Last update
..
baseline Loading commit data...
OWNERS Loading commit data...
compilation-manager.cc Loading commit data...
compilation-manager.h Loading commit data...
decoder.h Loading commit data...
function-body-decoder-impl.h Loading commit data...
function-body-decoder.cc Loading commit data...
function-body-decoder.h Loading commit data...
leb-helper.h Loading commit data...
local-decl-encoder.cc Loading commit data...
local-decl-encoder.h Loading commit data...
memory-tracing.cc Loading commit data...
memory-tracing.h Loading commit data...
module-compiler.cc Loading commit data...
module-compiler.h Loading commit data...
module-decoder.cc Loading commit data...
module-decoder.h Loading commit data...
signature-map.cc Loading commit data...
signature-map.h Loading commit data...
streaming-decoder.cc Loading commit data...
streaming-decoder.h Loading commit data...
wasm-api.cc Loading commit data...
wasm-api.h Loading commit data...
wasm-code-specialization.cc Loading commit data...
wasm-code-specialization.h Loading commit data...
wasm-code-wrapper.cc Loading commit data...
wasm-code-wrapper.h Loading commit data...
wasm-debug.cc Loading commit data...
wasm-external-refs.cc Loading commit data...
wasm-external-refs.h Loading commit data...
wasm-heap.cc Loading commit data...
wasm-heap.h Loading commit data...
wasm-interpreter.cc Loading commit data...
wasm-interpreter.h Loading commit data...
wasm-js.cc Loading commit data...
wasm-js.h Loading commit data...
wasm-limits.h Loading commit data...
wasm-memory.cc Loading commit data...
wasm-memory.h Loading commit data...
wasm-module-builder.cc Loading commit data...
wasm-module-builder.h Loading commit data...
wasm-module.cc Loading commit data...
wasm-module.h Loading commit data...
wasm-objects-inl.h Loading commit data...
wasm-objects.cc Loading commit data...
wasm-objects.h Loading commit data...
wasm-opcodes.cc Loading commit data...
wasm-opcodes.h Loading commit data...
wasm-result.cc Loading commit data...
wasm-result.h Loading commit data...
wasm-serialization.cc Loading commit data...
wasm-serialization.h Loading commit data...
wasm-text.cc Loading commit data...
wasm-text.h Loading commit data...
wasm-value.h Loading commit data...