• Bill Budge's avatar
    Revert "[compiler] Track the maximal unoptimized frame size" · 98b5c49f
    Bill Budge authored
    This reverts commit 1e472c42.
    
    Reason for revert: Speculative revert, to attempt to fix crashes that block the V8 roll. Example failure run:
    
    https://ci.chromium.org/p/chromium/builders/try/linux-rel/173465
    
    Original change's description:
    > [compiler] Track the maximal unoptimized frame size
    > 
    > This is another step towards considering the unoptimized frame size in
    > stack checks within optimized code.
    > 
    > With the changes in this CL, we now keep track of the maximal
    > unoptimized frame size of the function that is currently being
    > compiled. An optimized function may inline multiple unoptimized
    > functions, so a single optimized frame can deopt to multiple
    > frames. The real frame size thus differs in different parts of the
    > optimized function.
    > 
    > We only care about the maximal frame size, which we calculate
    > conservatively as an over-approximation, and track in
    > InstructionSelector::max_unoptimized_frame_height_ for now. In future
    > work, this value will be passed on to codegen, where it will be
    > applied as an offset to the stack pointer during the stack check.
    > 
    > (The motivation behind this is to avoid stack overflows through deopts,
    > caused by size differences between optimized and unoptimized frames.)
    > 
    > Note that this offset only ensure that the topmost optimized frame can
    > deopt without overflowing the stack limit. That's fine, because we only
    > deopt optimized frames one at a time. Other (non-topmost) frames are
    > only deoptimized once they are returned to.
    > 
    > Drive-by: Print variable and total frame height in --trace-deopt.
    > 
    > Bug: v8:9534
    > Change-Id: I821684a9da93bff59c20c8ab226105e7e12d93eb
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1762024
    > Commit-Queue: Jakob Gruber <jgruber@chromium.org>
    > Auto-Submit: Jakob Gruber <jgruber@chromium.org>
    > Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
    > Reviewed-by: Georg Neis <neis@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#63330}
    
    TBR=neis@chromium.org,sigurds@chromium.org,jgruber@chromium.org
    
    Change-Id: I7b225c30bfc4e1d958276583f512a1ec5fa2b458
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: v8:9534
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1764626Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
    Commit-Queue: Bill Budge <bbudge@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#63350}
    98b5c49f
frames.cc 89.8 KB