[PATCH] D96205: [WebAssembly] Fix multiclass template parameter types. NFC.

Heejin Ahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Feb 6 10:31:03 PST 2021


aheejin added inline comments.


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td:688
   PatFrag rmw_8, PatFrag rmw_16, PatFrag rmw_32, PatFrag rmw_64,
-  NI inst8_32, NI inst16_32, NI inst8_64, NI inst16_64, NI inst32_64> {
+  string inst8_32, string inst16_32, string inst8_64, string inst16_64, string inst32_64> {
   // Truncating-extending binary RMWs with no constant offset
----------------



================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrMemory.td:70
 // Select loads with no constant offset.
-multiclass LoadPatNoOffset<ValueType ty, PatFrag kind, string inst> {
+multiclass LoadPatNoOffset<ValueType ty, SDPatternOperator kind, string inst> {
   def : Pat<(ty (kind I32:$addr)), (!cast<NI>(inst # "_A32") 0, 0, I32:$addr)>,
----------------
Why should this be `SDPatternOperator`? What we put here seems `load`, which is a subclass of `PatFrag`. The same question for other `LoadPat***` changes.


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td:311
 // Select loads with no constant offset.
-multiclass LoadLanePatNoOffset<Vec vec, PatFrag kind> {
+multiclass LoadLanePatNoOffset<Vec vec, SDPatternOperator kind> {
   defvar load_lane_a32 = !cast<NI>("LOAD_LANE_"#vec#"_A32");
----------------
This seems to be the same case as `StoreLanePatNoOffset`, in which your suggestion was `Intrinsic`..?


================
Comment at: llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td:916
 
-multiclass SIMDBinaryIntNoI8x16<SDNode node, string name, bits<32> baseInst> {
+multiclass SIMDBinaryIntNoI8x16<SDPatternOperator node, string name, bits<32> baseInst> {
   defm "" : SIMDBinary<I16x8, node, name, !add(baseInst, 32)>;
----------------
We seem to supply `SDNode` in arguments to this class..? (The same question for other `SIMDBinary` suggestions)


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D96205



More information about the llvm-commits mailing list