• sigurds@chromium.org's avatar
    Fix scheduler to correctly schedule nested diamonds. · 0f5949d6
    sigurds@chromium.org authored
    The scheduler rewires control based on the last *control*
    node that appears in the schedule of a block. This is not
    sufficient to account for dependencies.
    
    This patch adds additional dependencies to floating control
    nodes. Given a floating control node A, every non-control
    dependency of every node B that depends on A is introduces
    as an additional dependency of A.
    
    This allows the scheduler to correctly schedule two
    diamonds A, B, if their only correct schedule is to
    schedule B into the ifTrue successor in A.
    
    TEST=cctest/test-scheduler/NestedFloatingDiamonds
    R=mstarzinger@chromium.org, titzer@chromium.org
    
    Review URL: https://codereview.chromium.org/602083003
    
    git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24561 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    0f5949d6
Name
Last commit
Last update
benchmarks Loading commit data...
build Loading commit data...
include Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
tools Loading commit data...
.DEPS.git Loading commit data...
.clang-format Loading commit data...
.gitignore 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...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...