• Bill Budge's avatar
    Revert "[regalloc] Place spill instructions optimally" · e9245e46
    Bill Budge authored
    This reverts commit f4548e75.
    
    Reason for revert: Breaks some gap resolver tests:
    https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim/24204
    
    Original change's description:
    > [regalloc] Place spill instructions optimally
    > 
    > Design doc:
    > https://docs.google.com/document/d/1n9ADWnDI-sw0OvdSmrthf61prmDqbDmQq-NSrQw2MVI/edit?usp=sharing
    > 
    > Most of this change follows directly what is discussed in the design
    > document. A few other things are also changed:
    > 
    > - PopulateReferenceMapsPhase is moved after ResolveControlFlowPhase so
    >   that it can make use of the decision regarding whether a value is
    >   spilled at its definition or later.
    > - SpillSlotLocator is removed. It was already somewhat confusing,
    >   because the responsibility for marking blocks as needing frames was
    >   split: in some cases they were marked by SpillSlotLocator, and in
    >   other cases they were marked by CommitSpillsInDeferredBlocks. With
    >   this change, that split responsibility would become yet more
    >   confusing if we kept SpillSlotLocator for the values that are spilled
    >   at their definition, so I propose a simpler rule that whatever code
    >   adds the spill move also marks the block.
    > - A few class definitions (LiveRangeBound, FindResult,
    >   LiveRangeBoundArray, and LiveRangeFinder) are moved without
    >   modification from register-allocator.cc to register-allocator.h so
    >   that we can refer to them from another cc file.
    > 
    > Bug: v8:10606
    > Change-Id: I374a3219a5de477a53bc48117e230287eae89e72
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2285390
    > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
    > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
    > Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#69345}
    
    TBR=rmcilroy@chromium.org,seth.brenith@microsoft.com,thibaudm@chromium.org
    
    Change-Id: Ie57109a009ee7ee541a6ff6f89901d1ac99027d2
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: v8:10606
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2350440Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
    Commit-Queue: Bill Budge <bbudge@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#69347}
    e9245e46
flag-definitions.h 81.8 KB