733b7c8258
This introduces the concept of a jump table for WebAssembly, which is used for every direct and indirect call to any WebAssembly function. For lazy compilation, it will initially contain code to call the WasmCompileLazy builtin, where it passes the function index to be called. For non-lazy-compilation, it will contain a jump to the actual code. The jump table allows to easily redirect functions for lazy compilation, tier-up, debugging and (in the future) code aging. After this CL, we will not need to patch existing code any more for any of these operations. R=mstarzinger@chromium.org, titzer@chromium.org Bug: v8:7758 Change-Id: I45f9983c2b06ae81bf5ce9847f4542fb48844a4f Reviewed-on: https://chromium-review.googlesource.com/1097075 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#53805} |
||
---|---|---|
.. | ||
control-transfer-unittest.cc | ||
decoder-unittest.cc | ||
function-body-decoder-unittest.cc | ||
leb-helper-unittest.cc | ||
loop-assignment-analysis-unittest.cc | ||
module-decoder-unittest.cc | ||
OWNERS | ||
streaming-decoder-unittest.cc | ||
trap-handler-unittest.cc | ||
wasm-code-manager-unittest.cc | ||
wasm-macro-gen-unittest.cc | ||
wasm-module-builder-unittest.cc | ||
wasm-opcodes-unittest.cc |