• Clemens Hammacher's avatar
    [wasm] Refactor function body decoder · 6b4dc039
    Clemens Hammacher authored
    This refactoring separates graph building from wasm decoding. The
    WasmGraphBuilder is just a consumer of the decoded information.
    Decoding without any consumer (i.e. just validation) gets 16% faster by
    this refactoring, because no TFNode* have to be stored in the value
    stack, and all dynamic tests to determine whether the graph should be
    build are gone (measured on AngryBots; before: 110.2 +- 3.3ms, after:
    92.2 +- 3.1 ms).
    
    This new design will allow us to also attach other consumers, e.g. a
    new baseline compiler.
    
    R=titzer@chromium.org
    
    Bug: v8:6600
    Change-Id: I4b60f2409d871a16c3c52a37e515bcfb9dbb8f54
    Reviewed-on: https://chromium-review.googlesource.com/571010
    Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
    Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#47671}
    6b4dc039
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
fuzzer Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mkgrokdump Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
promises-aplus Loading commit data...
test262 Loading commit data...
unittests Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...
bot_default.gyp Loading commit data...
bot_default.isolate Loading commit data...
default.gyp Loading commit data...
default.isolate Loading commit data...
optimize_for_size.gyp Loading commit data...
optimize_for_size.isolate Loading commit data...
perf.gyp Loading commit data...
perf.isolate Loading commit data...