• Milad Fa's avatar
    PPC/S390: Introduce MultiPush/Pop of doubles and/or Simd registers · df912633
    Milad Fa authored
    When pushing/popping registers, we need a way in PPC and S390
    to detect if Simd registers need to be pushed or not.
    
    On PPC Simd registers are separate from FP registers, hence we
    need to push them both. If Simd is not available then we push
    an empty space in place of Simd registers.
    
    On S390 the Simd and FP registers are shared. If Simd is available
    then we only push them and not the FPs, else we push FP registers
    as well as an empty space the size of FPs as the stack needs to look
    like as if Simds were saved too.
    
    We also need to check if we are generating builtins or
    call is being made at runtime. We cannot use `SupportsWasmSimd128`
    when generating builtin as `CpuFeatures` are turned off, so we need
    to emit the `if/else` manually for checking the value of
    `SupportsWasmSimd128`.
    
    
    Change-Id: Id149c6578db9c2f92d903fd871d85c648d43ce70
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2958963Reviewed-by: 's avatarJunliang Yan <junyan@redhat.com>
    Commit-Queue: Milad Fa <mfarazma@redhat.com>
    Cr-Commit-Position: refs/heads/master@{#75188}
    df912633
macro-assembler-s390.h 57.7 KB