• Stephan Herhut's avatar
    [codegen] Align targets of switch in loops · acb896b5
    Stephan Herhut authored
    The blazor benchmark wobbles around by 5% with seemingly unrelated
    changes to the generated code. I suspect this is due to moving
    target adresses of the switch statement for the interpreter.
    
    Generally, it would make sense to align targets for switch statements
    as per general optimization guidelines. To keep code growth in bounds,
    this change only enables this for switch statements inside of loops.
    
    Local measurements show an improvement of around 5% for blazor and
    hopefully the benchmark will be more stable moving forward.
    
    Bug: chromium:919986 chromium:921477
    Change-Id: I69df38f902d4fcc65af9e95a63ca1f7f14e0fa09
    Reviewed-on: https://chromium-review.googlesource.com/c/1411637Reviewed-by: 's avatarMichael Starzinger <mstarzinger@chromium.org>
    Commit-Queue: Stephan Herhut <herhut@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#58825}
    acb896b5
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
custom_deps Loading commit data...
docs Loading commit data...
gni Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...