• Ng Zhi An's avatar
    [wasm-simd][ia32] Optimize i8x16.swizzle with external refs · c296436e
    Ng Zhi An authored
    This is similar to the x64 optimization for i8x16.swizzle.
    
    Use external refs to load the masks neded for i8x16.swizzle. Before it
    would need 3 instructions (2 moves + 1 pshufd), now it requires 2 moves.
    Also on AVX we can relax the dst == src requirement, which can
    potentially save a move too.
    
    Extract the code sequence into a macro-assembler function for sharing
    between Liftoff and TurboFan.
    
    Bug: v8:11346
    Change-Id: Id0ec5e891595f0b0fc2922e932fc6c501eca8dc1
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2727150Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
    Commit-Queue: Zhi An Ng <zhin@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#73171}
    c296436e
macro-assembler-ia32.h 44.4 KB