[PATCH] D80824: [CodeGen][SVE] Avoid scalarizing zero splat stores on scalable vectors.
Henry Kao via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 4 08:12:11 PDT 2020
hkao13 updated this revision to Diff 268472.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D80824/new/
https://reviews.llvm.org/D80824
Files:
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Index: llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
===================================================================
--- llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+++ llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
@@ -11969,6 +11969,10 @@
SDValue StVal = St.getValue();
EVT VT = StVal.getValueType();
+ // Avoid scalarizing zero splat stores for scalable vectors.
+ if (VT.isScalableVector() || !VT.isFixedLengthVector())
+ return SDValue();
+
// It is beneficial to scalarize a zero splat store for 2 or 3 i64 elements or
// 2, 3 or 4 i32 elements.
int NumVecElts = VT.getVectorNumElements();
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D80824.268472.patch
Type: text/x-patch
Size: 629 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200604/73990c55/attachment-0001.bin>
More information about the llvm-commits
mailing list