Skip to content

Commit

Permalink
Revert "[SLP]Fix a crash when insert subvector is out of range."
Browse files Browse the repository at this point in the history
This reverts commit f1ee273.

Revert due to the revert of a dependent commit `[SLP]Improve shuffles cost estimation where possible.`
  • Loading branch information
MaskRay committed Jun 23, 2022
1 parent 352346f commit a411bc1
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 32 deletions.
12 changes: 1 addition & 11 deletions llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Expand Up @@ -6168,16 +6168,6 @@ InstructionCost BoUpSLP::getEntryCost(const TreeEntry *E,
PowerOf2Ceil(OffsetEnd - OffsetBeg + 1),
((OffsetEnd - OffsetBeg + VecScalarsSz) / VecScalarsSz) *
VecScalarsSz);
bool IsWholeSubvector =
OffsetBeg == Offset && ((OffsetEnd + 1) % VecScalarsSz == 0);
// Check if we can safely insert a subvector. If it is not possible, just
// generate a whole-sized vector and shuffle the source vector and the new
// subvector.
if (OffsetBeg + InsertVecSz > VecSz) {
// Align OffsetBeg to generate correct mask.
OffsetBeg = alignDown(OffsetBeg, VecSz, Offset);
InsertVecSz = VecSz;
}

APInt DemandedElts = APInt::getZero(NumElts);
// TODO: Add support for Instruction::InsertValue.
Expand Down Expand Up @@ -6221,7 +6211,7 @@ InstructionCost BoUpSLP::getEntryCost(const TreeEntry *E,
// TODO: Implement the analysis of the FirstInsert->getOperand(0)
// subvector of ActualVecTy.
if (!isUndefVector(FirstInsert->getOperand(0)) && NumScalars != NumElts &&
!IsWholeSubvector) {
(Offset != OffsetBeg || (OffsetEnd + 1) % VecScalarsSz != 0)) {
if (InsertVecSz != VecSz) {
auto *ActualVecTy =
FixedVectorType::get(SrcVecTy->getElementType(), VecSz);
Expand Down

This file was deleted.

0 comments on commit a411bc1

Please sign in to comment.