• Leszek Swirski's avatar
    Revert "[interpreter] Short Star bytecode" · 08a49bbe
    Leszek Swirski authored
    This reverts commit cf93071c.
    
    Reason for revert: Speculative revert because of Mac4 GC stress failure: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac64%20GC%20Stress/16697/overview
    
    Original change's description:
    > [interpreter] Short Star bytecode
    >
    > Design doc:
    > https://docs.google.com/document/d/1g_NExMT78II_KnIYNa9MvyPYIj23qAiFUEsyemY5KRk/edit
    >
    > This change adds 16 new interpreter opcodes, kStar0 through kStar15, so
    > that we can use a single byte to represent the common operation of
    > storing to a low-numbered register. This generally reduces the quantity
    > of bytecode generated on web sites by 8-9%.
    >
    > In order to not degrade speed, a couple of other changes are required:
    >
    > The existing lookahead logic to check for Star after certain other
    > bytecode handlers is updated to check for these new short Star codes
    > instead. Furthermore, that lookahead logic is updated to contain its own
    > copy of the dispatch jump rather than merging control flow with the
    > lookahead-failed case, to improve branch prediction.
    >
    > A bunch of constants use bytecode size in bytes as a proxy for the size
    > or complexity of a function, and are adjusted downward proportionally to
    > the decrease in generated bytecode size.
    >
    > Other small drive-by fix: update generate-bytecode-expectations to emit
    > \n instead of \r\n on Windows.
    >
    > Change-Id: I6307c2b0f5794a3a1088bb0fb94f6e1615441ed5
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2641180
    > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
    > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
    > Cr-Commit-Position: refs/heads/master@{#72773}
    
    TBR=rmcilroy@chromium.org,mythria@chromium.org,seth.brenith@microsoft.com
    
    Change-Id: I0162b9400861b90bacef27cca9aebc8ab9d74c10
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2697350Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#72777}
    08a49bbe
Name
Last commit
Last update
..
api Loading commit data...
asmjs Loading commit data...
assembler Loading commit data...
base Loading commit data...
codegen Loading commit data...
compiler Loading commit data...
compiler-dispatcher Loading commit data...
date Loading commit data...
diagnostics Loading commit data...
execution Loading commit data...
heap Loading commit data...
interpreter Loading commit data...
libplatform Loading commit data...
logging Loading commit data...
numbers Loading commit data...
objects Loading commit data...
parser Loading commit data...
profiler Loading commit data...
regress Loading commit data...
strings Loading commit data...
tasks Loading commit data...
torque Loading commit data...
utils Loading commit data...
wasm Loading commit data...
zone Loading commit data...
BUILD.gn Loading commit data...
DEPS Loading commit data...
run-all-unittests.cc Loading commit data...
test-helpers.cc Loading commit data...
test-helpers.h Loading commit data...
test-utils.cc Loading commit data...
test-utils.h Loading commit data...
testcfg.py Loading commit data...
unittests.status Loading commit data...