[PATCH] D35700: DAGCombiner: Extend reduceBuildVecToTrunc to handle non-zero offset

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 21 07:32:02 PDT 2017


RKSimon added inline comments.


================
Comment at: include/llvm/Target/TargetLowering.h:2782
+      int Stride, int Offset, EVT SrcVT, EVT BuildVecVT) const {
+    return false;
+  }
----------------
It would possibly make sense to change this to
```
isDesirableToCombineBuildVectorToShuffleTruncate(ArrayRef<int> ShuffleMask, EVT SrcVT, EVT TruncVT)
```
checking with a general shuffle mask - I'd expect any non-lane crossing shuffle mask to be valid on AVX512.


https://reviews.llvm.org/D35700





More information about the llvm-commits mailing list