[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-03-31 Thread Eli Friedman via Phabricator via cfe-commits
efriedma added a comment. (Also merged followup https://github.com/llvm/llvm-project/commit/ba4764c2cc14b0b495af539a913de10cf8268420 to fix a memory leak caught by the bots.) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72467/new/

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-03-27 Thread Sanjay Patel via Phabricator via cfe-commits
spatel added a comment. Looks like D76649 landed and added another IRBuilder call that needs updating: [2974/5437] Building CXX object lib/Target/X86/CMakeFiles/LLVMX86CodeGen.dir/X86PartialReduction.cpp.o FAILED:

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-29 Thread Eli Friedman via Phabricator via cfe-commits
efriedma updated this revision to Diff 241333. efriedma added a comment. Address review comments, rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72467/new/ https://reviews.llvm.org/D72467 Files: clang/lib/CodeGen/CGExpr.cpp

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-24 Thread Sanjay Patel via Phabricator via cfe-commits
spatel added a comment. In D72467#1839172 , @efriedma wrote: > In D72467#1838591 , @spatel wrote: > > > LGTM, but should get a 2nd opinion since I'm not familiar with some of the > > parts. > > > Any specific part

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-24 Thread Eli Friedman via Phabricator via cfe-commits
efriedma marked 5 inline comments as done. efriedma added a comment. In D72467#1838591 , @spatel wrote: > LGTM, but should get a 2nd opinion since I'm not familiar with some of the > parts. Any specific part you're worried about?

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-24 Thread Christopher Tetreault via Phabricator via cfe-commits
ctetreau added inline comments. Comment at: llvm/lib/IR/ConstantsContext.h:153 cast(C1->getType())->getElementType(), - cast(C3->getType())->getElementCount()), + Mask.size(), C1->getType()->getVectorIsScalable()),

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-24 Thread Sander de Smalen via Phabricator via cfe-commits
sdesmalen added a comment. Thanks @efriedma for working on this. The overall approach seems good to me! Mostly added some nits, with the exception of one question on what to do with a shufflevector with fixed-width mask and scalable source vectors. Comment at:

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-24 Thread Sanjay Patel via Phabricator via cfe-commits
spatel accepted this revision. spatel added a comment. This revision is now accepted and ready to land. LGTM, but should get a 2nd opinion since I'm not familiar with some of the parts. Also, please update the related LangRef text for shufflevector in or alongside this patch. Could add some

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-23 Thread Eli Friedman via Phabricator via cfe-commits
efriedma updated this revision to Diff 240071. efriedma added a comment. Addressed review comments. Rebased. Chris Tetreault mentioned offline that we might want to change the return value of `getShuffleMask()` now, to try to save some work later when we add more forms of scalable vector

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-23 Thread Eli Friedman via Phabricator via cfe-commits
efriedma marked 5 inline comments as done. efriedma added inline comments. Comment at: llvm/include/llvm/IR/IRBuilder.h:2551 +SmallVector IntMask; +IntMask.assign(Mask.begin(), Mask.end()); +return CreateShuffleVector(V1, V2, IntMask, Name); ctetreau

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-23 Thread Christopher Tetreault via Phabricator via cfe-commits
ctetreau added inline comments. Comment at: llvm/include/llvm/IR/IRBuilder.h:2544 +SmallVector IntMask; +ShuffleVectorInst::getShuffleMask(cast(Mask), IntMask); +return CreateShuffleVector(V1, V2, IntMask, Name); spatel wrote: > Add an assert that

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-23 Thread Sanjay Patel via Phabricator via cfe-commits
spatel added inline comments. Comment at: llvm/include/llvm/IR/Constants.h:1220 + /// Assert that this is an shufflevector and return the mask. See class + /// ShuffleVectorInst for a description of the mask representation. an shufflevector -> a

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-13 Thread Eli Friedman via Phabricator via cfe-commits
efriedma updated this revision to Diff 237830. efriedma edited the summary of this revision. efriedma added a comment. Fixed one more issue. While I'm at it, get rid of the old overload of ConstantExpr::getShuffleVector, which only had a few remaining uses. Repository: rG LLVM Github

[PATCH] D72467: Remove "mask" operand from shufflevector.

2020-01-13 Thread Eli Friedman via Phabricator via cfe-commits
efriedma updated this revision to Diff 237825. efriedma retitled this revision from "[WIP] Remove "mask" operand from shufflevector." to "Remove "mask" operand from shufflevector.". efriedma added a comment. Rebase. Address review comment. More work on bitcode. I probably need to come up with