• Ross McIlroy's avatar
    [TurboProp] Use GraphAssembler to track effect/control in linearizer. · 081114b5
    Ross McIlroy authored
    Updates the EffectControlLinerizer to feed all nodes it processes
    through the GraphAssembler. This is required to enable the GraphAssembler
    to maintain the schedule for TurboProp, but also means we can avoid
    keeping track of the current effect and control nodes in the
    EffectControlLinearizer and use the GraphAssembler for that instead.
    
    Also modifies EffectControlLinearizer to avoid accessing the basic block
    while lowering nodes, since a basic block updating GraphAssembler could
    modify the current block. Once lowered, we finalizes GraphAssembler to
    provide the updated basic block for which the original control should be
    processed.
    
    BUG=v8:9684
    
    Change-Id: Ibe7f396e15f8bebf35b9c50d56c245cbc92547f5
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1842453
    Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
    Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#64528}
    081114b5
graph-assembler.cc 26.2 KB