• Clemens Backes's avatar
    Revert "[wasm-simd][liftoff] Add S128 case for stack movements" · f3a5c36a
    Clemens Backes authored
    This reverts commit 5cfe053e.
    
    Reason for revert: "liftoff-simd-params" also fails on no-sse :/
    
    Original change's description:
    > [wasm-simd][liftoff] Add S128 case for stack movements
    > 
    > The two cases we are fixing here are Construct and
    > LoadCallerFrameSlot, which are closely related.
    > 
    > Construct is called during PrepareCall, where we build up
    > LiftoffStackSlots when we need to move an arg from caller's stack frame
    > into callee's stack frame. LoadCallerFrameSlot is the parallel to
    > this, called in ProcessParameter during decoding of the callee's
    > function body.
    > 
    > In most cases, Construct needs a new case to handle kWasmS128, and calls
    > the relevant assembler to push a s128 onto the stack.
    > 
    > ARM64 requires 16-byte alignment of sp, so we need to Claim the right
    > number of kXRegSize slots first, which requires
    > us traversing the list of slots to figure out how many s128 values there
    > are. This is a straightforward way to fix this, if efficiency is a
    > problem, we can change LiftOffStackSlots::Add to sum up the slot sizes.
    > 
    > On IA32, pushing s128 values will require 4 calls to push. Instead, we
    > use a sub and two movdqu, which will generate less code in most cases.
    > 
    > On x64, there is no 128-bit push, so we call push twice.
    > 
    > Bug: v8:9909
    > Change-Id: I3af35b8462ea9c3b9b2d90800c37d11b5e95be59
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2015945
    > Commit-Queue: Zhi An Ng <zhin@chromium.org>
    > Reviewed-by: Clemens Backes <clemensb@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#65956}
    
    TBR=clemensb@chromium.org,zhin@chromium.org,joey.gouly@arm.com
    
    Change-Id: Ib3c5a088e2d85baf1d8b143272844fb5ebb33c57
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: v8:9909
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2017724Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Commit-Queue: Clemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#65960}
    f3a5c36a
Name
Last commit
Last update
build_overrides Loading commit data...
custom_deps Loading commit data...
docs Loading commit data...
gni Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.clang-tidy Loading commit data...
.editorconfig Loading commit data...
.flake8 Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
COMMON_OWNERS Loading commit data...
DEPS Loading commit data...
ENG_REVIEW_OWNERS Loading commit data...
INFRA_OWNERS Loading commit data...
INTL_OWNERS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
MIPS_OWNERS Loading commit data...
OWNERS Loading commit data...
PPC_OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
S390_OWNERS Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...