-
Milad Farazmand authored
Port 6b228044 Original Commit Message: This is a reland of dd19a400 Original change's description: > [wasm-simd][liftoff][x64][ia32] Implement load extend > > The operations are implemented: > > - i16x8.load8x8_s > - i16x8.load8x8_u > - i32x4.load16x4_s > - i32x4.load16x4_u > - i64x2.load32x2_s > - i64x2.load32x2_u > > on x64 and i32. The rest of the arch currently bail out, and will be > implemented in subsequent patches. > > The liftoff-compiler.cc code looks very similar to the one for LoadMem, > the only difference is special handling of kSplat v.s. kExtend. kExtend > always loads 8 bytes, so the bounds check and tracing is different. > Compared to LoadMem there is less need for pinning, since the result is > always going to be in a SIMD/FP register, which is different from the > index/addr register. > > The enum LoadTransformationKind was moved from > function-body-decoder-impl.h to function-body-decoder.h so that no > unncessary header file inclusions were needed to liftoff, and also it's > a better place for it to live. > > Bug: v8:9909 > Change-Id: I926bcc01c0c3c860223e8c08f91bc4ab3b75c399 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2203730 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#67914} R=zhin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: I2745871868afc1e6120197ad3ad138c89d47521e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2210764Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#67933}
47513717