[llvm] 4d75691 - [Hexagon] Change placeholder from `undef` to `poison` (#135555)
via llvm-commits
llvm-commits at lists.llvm.org
Sat Apr 19 09:15:10 PDT 2025
Author: Pedro Lobo
Date: 2025-04-19T17:15:07+01:00
New Revision: 4d756917617c3fa2990fd41a5efc3c97bd3506d8
URL: https://github.com/llvm/llvm-project/commit/4d756917617c3fa2990fd41a5efc3c97bd3506d8
DIFF: https://github.com/llvm/llvm-project/commit/4d756917617c3fa2990fd41a5efc3c97bd3506d8.diff
LOG: [Hexagon] Change placeholder from `undef` to `poison` (#135555)
A `poison` vector should be used when performing an identity shuffle.
Co-authored-by: Nuno Lopes <nuno.lopes at tecnico.ulisboa.pt>
Added:
Modified:
llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp b/llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
index f800446592c06..d0f14d8ad7286 100644
--- a/llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
@@ -2318,9 +2318,9 @@ auto HexagonVectorCombine::insertb(IRBuilderBase &Builder, Value *Dst,
assert(0 <= Where && Where + Length <= DstLen);
int P2Len = PowerOf2Ceil(SrcLen | DstLen);
- auto *Undef = UndefValue::get(getByteTy());
- Value *P2Src = vresize(Builder, Src, P2Len, Undef);
- Value *P2Dst = vresize(Builder, Dst, P2Len, Undef);
+ auto *Poison = PoisonValue::get(getByteTy());
+ Value *P2Src = vresize(Builder, Src, P2Len, Poison);
+ Value *P2Dst = vresize(Builder, Dst, P2Len, Poison);
SmallVector<int, 256> SMask(P2Len);
for (int i = 0; i != P2Len; ++i) {
@@ -2331,7 +2331,7 @@ auto HexagonVectorCombine::insertb(IRBuilderBase &Builder, Value *Dst,
}
Value *P2Insert = Builder.CreateShuffleVector(P2Dst, P2Src, SMask, "shf");
- return vresize(Builder, P2Insert, DstLen, Undef);
+ return vresize(Builder, P2Insert, DstLen, Poison);
}
auto HexagonVectorCombine::vlalignb(IRBuilderBase &Builder, Value *Lo,
More information about the llvm-commits
mailing list