[PATCH] D66718: [DAGCombiner] (insert_vector_elt (vector_shuffle X, Y), (extract_vector_elt X, N), IdxC) -> (vector_shuffle X, Y)
Roman Lebedev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Aug 25 23:20:34 PDT 2019
lebedev.ri added inline comments.
================
Comment at: lib/CodeGen/SelectionDAG/DAGCombiner.cpp:16448-16450
+ SmallVector<int, 16> NewMask(Mask.size());
+ for (size_t i = 0; i < Mask.size(); i++)
+ NewMask[i] = Mask[i];
----------------
lebedev.ri wrote:
> craig.topper wrote:
> > deadalnix wrote:
> > > lebedev.ri wrote:
> > > > So `NewMask` is simply inited as a copy of `SVN->getMask()`?
> > > > Would something like `SmallVector<int, 16> NewMask(SVN->getMask());` just work?
> > > I asked mys elf the same question. This doesn't seem to work.
> > Yeah SmallVector doesn't take an ArrayRef, but you can do
> >
> > SmallVector<int, 16> NewMask(Mask.begin(), Mask.end());
> `SmallVector<int, 16> NewMask(SVN->getMask().begin(), SVN->getMask().end());` then.
Please mark comments as resolved as appropriate.
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D66718/new/
https://reviews.llvm.org/D66718
More information about the llvm-commits
mailing list