[PATCH] D151742: [RISCV] Use v(f)slide1down for shuffle+insert idiom

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 30 15:38:44 PDT 2023


craig.topper added inline comments.


================
Comment at: llvm/lib/Target/RISCV/RISCVISelLowering.cpp:3759
+  // Don't try to reason about length changing shuffles
+  if (EVT(VT) != V1.getValueType())
+    return SDValue();
----------------
I think VECTOR_SHUFFLE nodes already required the VTs to match.


================
Comment at: llvm/lib/Target/RISCV/RISCVISelLowering.cpp:3787
+  if (!IsVSlideDown &&
+      !isSlideMask(Mask, OpsSwapped ? 0 : NumElts, -1))
+    return SDValue();
----------------
I don't think we need a line break here? Unless clang-format did it?


================
Comment at: llvm/lib/Target/RISCV/RISCVISelLowering.cpp:3805
+                         Splat, TrueMask,
+                         DAG.getConstant(NumElts, DL, XLenVT));
+  return convertFromScalableVector(VT, Vec, DAG, Subtarget);
----------------
Is the VL we would have gotten from getDefaultVLOps if you hadn't just taken `.first`?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D151742



More information about the llvm-commits mailing list