[PATCH] D107597: [DAG] Fold concat_vectors(concat_vectors(x,y),concat_vectors(a,b)) -> concat_vectors(x,y,a,b)

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 6 00:27:09 PDT 2021


dmgreen added a comment.

Thanks. Both Arm parts look OK to me (the MVE code for concating predicate registers just needs to work, it does not need to be very efficient :) )



================
Comment at: llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:19899
+    for (const SDValue &Sub : Op->ops())
+      ConcatOps.push_back(Sub);
+  }
----------------
Can this use ConcatOps.append?


================
Comment at: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:13587
   // canonicalise to that.
   if (N0 == N1 && VT.getVectorNumElements() == 2) {
     assert(VT.getScalarSizeInBits() == 64);
----------------
Can you add a N->getNumOperands() == 2 check here, to be safe.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D107597



More information about the llvm-commits mailing list