• Stephan Herhut's avatar
    [regalloc] Splinter to the end of interval if value dies · 19b15382
    Stephan Herhut authored
    If a value dies in deferred code, there is no need to reload it at the
    end of the deferred code, as it will be dead in the non-deferred code
    that follows in control flow order. In the linearized view of register
    allocation, this is encoded as a lifetime gap (or the end of an
    interval).
    
    Moreover, this may lead to wrong assignments if the value dies
    between two deferred blocks and we leave a non-splintered live
    range in the middle of deferred code.
    
    Bug: chromium:915975
    Change-Id: Iec68fe86f0dfbbac612635a637f3239475906d14
    Reviewed-on: https://chromium-review.googlesource.com/c/1433784
    Commit-Queue: Stephan Herhut <herhut@chromium.org>
    Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#59068}
    19b15382
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...