Skip to content

Commit 7a58cb0

Browse files
committed
Call CreateShuffleVector without the poison
If we call CreateShuffleVector with only one value as an argument, it will create a poison vector internally and it shuffled.
1 parent 014b186 commit 7a58cb0

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

llvm/lib/Transforms/Vectorize/VectorCombine.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -715,8 +715,7 @@ bool VectorCombine::foldInsExtFNeg(Instruction &I) {
715715
Value *VecFNeg = Builder.CreateFNegFMF(SrcVec, FNeg);
716716
if (NeedLenChg) {
717717
// shuffle DestVec, (shuffle (fneg SrcVec), poison, SrcMask), Mask
718-
Value *LenChgShuf = Builder.CreateShuffleVector(
719-
SrcVec, PoisonValue::get(SrcVecTy), SrcMask);
718+
Value *LenChgShuf = Builder.CreateShuffleVector(SrcVec, SrcMask);
720719
NewShuf = Builder.CreateShuffleVector(DestVec, LenChgShuf, Mask);
721720
} else {
722721
// shuffle DestVec, (fneg SrcVec), Mask

0 commit comments

Comments
 (0)