[PATCH] D72361: [DAGCombiner] reduce extract subvector of concat

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 8 07:50:15 PST 2020


lebedev.ri added inline comments.


================
Comment at: llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:18591
+    //   v2i8 extract_subvec (v16i8 concat (v8i8 X), (v8i8 Y), 14 -->
+    //   v2i8 extract_subvec v8i8 Y, 6
+    if (ConcatSrcNumElts > ExtNumElts) {
----------------
I'm having a hard time parsing this.

Did we ensure that the original extract only extracts
only from one single concatenated vector?

I.e. that it does not take a new elements from
the end of first concatenated vector, and a few elements
from the beginning of second concatenated vector?
(That case could be implemented as a shuffle if we concatenating the same vector)



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

https://reviews.llvm.org/D72361





More information about the llvm-commits mailing list