• Ng Zhi An's avatar
    [wasm-simd] Optimize i64x2.shr_s · 10d4418f
    Ng Zhi An authored
    Use logical shifts to emulate arithmetic shift, by first adding a bias
    to make all signed values unsigned, then subtracting the shifted bias.
    Details are in code comments for SharedTurboAssembler::I64x2ShrS.
    
    Also refactor ia32 (which was already using this algorithm) to use the
    shared macro-assembler function. And convert Liftoff's implementation as
    well.
    
    Bug: v8:12058
    Change-Id: Ia1fd5fe5a9a0b7a7f31c426d4112256c8bf7021b
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3083291
    Commit-Queue: Zhi An Ng <zhin@chromium.org>
    Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#76209}
    10d4418f
macro-assembler-shared-ia32-x64.h 12.7 KB