Skip to content

Commit 4d75691

Browse files
[Hexagon] Change placeholder from undef to poison (#135555)
A `poison` vector should be used when performing an identity shuffle. Co-authored-by: Nuno Lopes <[email protected]>
1 parent 198c5da commit 4d75691

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2318,9 +2318,9 @@ auto HexagonVectorCombine::insertb(IRBuilderBase &Builder, Value *Dst,
23182318
assert(0 <= Where && Where + Length <= DstLen);
23192319

23202320
int P2Len = PowerOf2Ceil(SrcLen | DstLen);
2321-
auto *Undef = UndefValue::get(getByteTy());
2322-
Value *P2Src = vresize(Builder, Src, P2Len, Undef);
2323-
Value *P2Dst = vresize(Builder, Dst, P2Len, Undef);
2321+
auto *Poison = PoisonValue::get(getByteTy());
2322+
Value *P2Src = vresize(Builder, Src, P2Len, Poison);
2323+
Value *P2Dst = vresize(Builder, Dst, P2Len, Poison);
23242324

23252325
SmallVector<int, 256> SMask(P2Len);
23262326
for (int i = 0; i != P2Len; ++i) {
@@ -2331,7 +2331,7 @@ auto HexagonVectorCombine::insertb(IRBuilderBase &Builder, Value *Dst,
23312331
}
23322332

23332333
Value *P2Insert = Builder.CreateShuffleVector(P2Dst, P2Src, SMask, "shf");
2334-
return vresize(Builder, P2Insert, DstLen, Undef);
2334+
return vresize(Builder, P2Insert, DstLen, Poison);
23352335
}
23362336

23372337
auto HexagonVectorCombine::vlalignb(IRBuilderBase &Builder, Value *Lo,

0 commit comments

Comments
 (0)