[PATCH] D80164: [WebAssembly] Fix bug in custom shuffle combine

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 19 03:45:11 PDT 2020


aheejin added a comment.

LGTM.

A separate question: In wasm_simd128.h <https://github.com/llvm/llvm-project/blob/master/clang/lib/Headers/wasm_simd128.h>, why are the type for all return values `v128_t`? If we don't cast return types to `v128_t` <https://github.com/llvm/llvm-project/blob/56079e1de1129837aa7569d8b3bb5e50afc0f1ea/clang/lib/Headers/wasm_simd128.h#L315> and return `__f32x4` as is, are bitcasts still gonna be generated?



================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp:1718
   // shuffles, where they are less likely to get in the way of other combines.
   // (shuffle (vNxT1 (bitcast (vNxT0 x))),  undef, mask) ->
   //  (vNxT1 (bitcast (vNxt0 (shuffle x, undef, mask))))
----------------
Nit: double spaces between `,` and `undef`


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp:1719
   // (shuffle (vNxT1 (bitcast (vNxT0 x))),  undef, mask) ->
   //  (vNxT1 (bitcast (vNxt0 (shuffle x, undef, mask))))
   SDValue Bitcast = N->getOperand(0);
----------------
Nit: `t0` -> `T0` for consistency


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D80164/new/

https://reviews.llvm.org/D80164





More information about the llvm-commits mailing list