[PATCH] D151736: [RISCV] Lower inserts into identity shuffles as v{,f}slide1ups

Fraser Cormack via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 30 10:29:34 PDT 2023


frasercrmck added inline comments.


================
Comment at: llvm/lib/Target/RISCV/RISCVISelLowering.cpp:6189
+        ArrayRef<int> ShufMask = Shuffle->getMask();
+        if (ShuffleVectorInst::isIdentityMask(ShufMask.drop_front(1)) &&
+            VecVT.isFixedLengthVector() && VecVT.getVectorNumElements() > 1) {
----------------
This function seems to assert that the mask is not empty. Is it all possible we could end up triggering this assert with one-element vectors? Would we better be moving the `VecVT.getVectorNumElements() > 1` check before calling `isIdentityMask`?

Could we try and add testing for the above case?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D151736



More information about the llvm-commits mailing list