• Bill Budge's avatar
    Reland "Reland "Reland "[compiler][wasm] Align Frame slots to value size""" · e639eafe
    Bill Budge authored
    This is a reland of 352b9ecb
    
    The test/fix CL has been merged in, as the fixes to return slot
    accounting are needed to fix Arm64 issues turned up by the fuzzers:
    
    https://chromium-review.googlesource.com/c/v8/v8/+/2644139
    
    The reverted fix for Wasm return slot allocation is added in
    patchset #2, to avoid fuzzer issues that it fixed:
    
    https://chromium-review.googlesource.com/c/v8/v8/+/2683024
    
    TBR=neis@chromium.org
    
    Original change's description:
    > Reland "Reland "[compiler][wasm] Align Frame slots to value size""
    >
    > This is a reland of 1694925c
    >
    > Minor fix to linkage for constexpr.
    >
    > TBR=ahaas@chromium.org,neis@chromium.org
    >
    > Original change's description:
    > > Reland "[compiler][wasm] Align Frame slots to value size"
    > >
    > > This is a reland of cddaf66c
    > >
    > > Original change's description:
    > > > [compiler][wasm] Align Frame slots to value size
    > > >
    > > > - Adds an AlignedSlotAllocator class and tests, to unify slot
    > > >   allocation. This attempts to use alignment holes for smaller
    > > >   values.
    > > > - Reworks Frame to use the new allocator for stack slots.
    > > > - Reworks LinkageAllocator to use the new allocator for stack
    > > >   slots and for ARMv7 FP register aliasing.
    > > > - Fixes the RegisterAllocator to align spill slots.
    > > > - Fixes InstructionSelector to align spill slots.
    > > >
    > > > Bug: v8:9198
    > > >
    > > > Change-Id: Ida148db428be89ef95de748ec5fc0e7b0358f523
    > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2512840
    > > > Commit-Queue: Bill Budge <bbudge@chromium.org>
    > > > Reviewed-by: Georg Neis <neis@chromium.org>
    > > > Reviewed-by: Andreas Haas <ahaas@chromium.org>
    > > > Cr-Commit-Position: refs/heads/master@{#71644}
    > >
    > > Bug: v8:9198
    > > Change-Id: Ib91fa6746370c38496706341e12d05c7bf999389
    > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2633390
    > > Commit-Queue: Bill Budge <bbudge@chromium.org>
    > > Reviewed-by: Andreas Haas <ahaas@chromium.org>
    > > Reviewed-by: Georg Neis <neis@chromium.org>
    > > Cr-Commit-Position: refs/heads/master@{#72195}
    >
    > Bug: v8:9198
    > Change-Id: I91e02b823af8ec925dacf075388fb22e3eeb3384
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640890
    > Reviewed-by: Bill Budge <bbudge@chromium.org>
    > Commit-Queue: Bill Budge <bbudge@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#72209}
    
    Bug: v8:9198
    Change-Id: Ia5cf63af4e5991bc7cf42da9972ffd044fc829f0
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2733177
    Commit-Queue: Bill Budge <bbudge@chromium.org>
    Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#73238}
    e639eafe
instruction-selector-arm.cc 122 KB