[PATCH] D66983: [WebAssembly] Add wasm-specific vector shuffle builtin and intrinsic

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 18 16:14:32 PDT 2019


aheejin added inline comments.


================
Comment at: llvm/include/llvm/IR/IntrinsicsWebAssembly.td:117
+             llvm_i32_ty, llvm_i32_ty, llvm_i32_ty, llvm_i32_ty, llvm_i32_ty,
+             llvm_i32_ty, llvm_i32_ty, llvm_i32_ty, llvm_i32_ty],
+            [IntrNoMem, IntrSpeculatable]>;
----------------
i32 is bigger than `ImmLaneIdx32`. Should we model this into something smaller, like i8? What happens if we specify an index grater than 31? (I think this question also applies to other intrinsics and builtins. I don't think it matters a lot given than all integers are larger than lane types though.)


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp:1251
+    return DAG.getNode(WebAssemblyISD::SHUFFLE, DL, Op.getValueType(), Ops);
+  }
   }
----------------
This looks rather straightforward... Can't we do this in TableGen?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D66983





More information about the llvm-commits mailing list