• zhengxing.li's avatar
    X87: Re-reland: Remove register index/code indirection. · 2e5845f1
    zhengxing.li authored
        port 5cf1c0bc (r31087).
    
        original commit message:
        Previous to this patch, both the lithium and TurboFan register
        allocators tracked allocated registers by "indices", rather than
        the register codes used elsewhere in the runtime. This patch
        ensures that codes are used everywhere, and in the process cleans
        up a bunch of redundant code and adds more structure to how the
        set of allocatable registers is defined.
    
        Some highlights of changes:
    
        * TurboFan's RegisterConfiguration class moved to V8's top level
          so that it can be shared with Crankshaft.
        * Various "ToAllocationIndex" and related methods removed.
        * Code that can be easily shared between Register classes on
          different platforms is now shared.
        * The list of allocatable registers on each platform is declared
          as a list rather than implicitly via the register index <->
          code mapping.
    
        additional comment:
        This patch must be work with CL https://codereview.chromium.org/1405673003/
        and CL https://codereview.chromium.org/1413343002/
        which provide the needed register allocation common code change in
        v8 for this CL
    
    BUG=
    
    Review URL: https://codereview.chromium.org/1410393004
    
    Cr-Commit-Position: refs/heads/master@{#31494}
    2e5845f1
Name
Last commit
Last update
benchmarks Loading commit data...
build Loading commit data...
docs 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/binutils Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
Makefile Loading commit data...
Makefile.android Loading commit data...
Makefile.nacl 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...