• Adam Klein's avatar
    Reland: [ignition] Be smarter about register allocation in VisitSuspend · 5dc2d6f6
    Adam Klein authored
    Split BytecodeGenerator::VisitSuspend into two pieces, one for
    building the suspension code and one for resumption (these
    are split into separate Build methods for convenience).
    Each gets its own RegisterAllocationScope, which allows us to
    reduce the register file size of the empty generator by 1.
    
    For consistency, rename VisitGeneratorPrologue() to
    BuildGeneratorPrologue() to match the names of the two
    newly-created methods.
    
    This relands the patch originally committed in
    98927ea5, as the test failure
    due to that change was a code flushing bug. Code flushing was
    disabled in de4a4095.
    
    R=rmcilroy@chromium.org
    
    Bug: v8:6379
    Change-Id: Ifb4deafea99693c0a4e8646cf4e9884c7374cfc6
    Reviewed-on: https://chromium-review.googlesource.com/508814Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
    Commit-Queue: Adam Klein <adamk@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#45406}
    5dc2d6f6
bytecode-generator.h 9.88 KB