[llvm] [IA]: Construct (de)interleave4 out of (de)interleave2 (PR #89276)

Paul Walker via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 7 06:50:34 PDT 2024


================
@@ -17168,13 +17167,17 @@ bool AArch64TargetLowering::lowerInterleaveIntrinsicToStore(
   const DataLayout &DL = II->getModule()->getDataLayout();
 
   bool UseScalable;
-  if (!isLegalInterleavedAccessType(VTy, DL, UseScalable))
+  if (!isLegalInterleavedAccessType(VTy, DL, UseScalable)) {
+    DeadInsts.clear();
     return false;
+  }
 
   // TODO: Add support for using SVE instructions with fixed types later, using
   // the code from lowerInterleavedStore to obtain the correct container type.
-  if (UseScalable && !VTy->isScalableTy())
+  if (UseScalable && !VTy->isScalableTy()) {
+    DeadInsts.clear();
----------------
paulwalker-arm wrote:

As above, you cannot assume DeadInsts is empty on function entry.

https://github.com/llvm/llvm-project/pull/89276


More information about the llvm-commits mailing list