[PATCH] D79224: [WebAssembly] Renumber SIMD opcodes

Thomas Lively via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri May 1 17:17:37 PDT 2020


tlively marked 3 inline comments as done.
tlively added inline comments.


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp:186
     // 64x2 conversions are not in the spec
-    if (!Subtarget->hasUnimplementedSIMD128())
-      for (auto Op :
----------------
aheejin wrote:
> So these have been decided not be included in the spec?
That's correct


================
Comment at: llvm/test/CodeGen/WebAssembly/simd-conversions.ll:88
-; SIMD128-NEXT: i64x2.trunc_sat_f64x2_u $push[[R:[0-9]+]]=, $0
-; SIMD128-NEXT: return $pop[[R]]
 define <2 x i64> @trunc_sat_u_v2i64(<2 x double> %x) {
----------------
aheejin wrote:
> We don't need this anymore?
No, these instructions have been removed because they are no longer in the proposal and there is not a great set of opcodes to assign them to. These test functions are still here to test that the compiler doesn't crash, but their contents aren't important to test here. The instructions get scalarized and our normal complicated lowering of fp-to-int gets applied, so we end up with a very large amount of code in this case.


================
Comment at: llvm/test/CodeGen/WebAssembly/simd-intrinsics.ll:479
-  ret <2 x i64> %a
-}
-
----------------
aheejin wrote:
> Ditto
These LLVM intrinsics are no longer supported, so the entire function is removed.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D79224





More information about the cfe-commits mailing list