• mbrandy's avatar
    PPC: Remove register index/code indirection · f53fda63
    mbrandy authored
    Port 5cf1c0bc
    
    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.
    
    R=danno@chromium.org, bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, dstence@us.ibm.com
    BUG=
    
    Review URL: https://codereview.chromium.org/1381383002
    
    Cr-Commit-Position: refs/heads/master@{#31114}
    f53fda63
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...