[llvm] [VPlan] Implement interleaving as VPlan-to-VPlan transform. (PR #95842)
    via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Sun Jun 23 03:15:31 PDT 2024
    
    
  
================
@@ -1569,3 +1569,379 @@ void VPlanTransforms::dropPoisonGeneratingRecipes(
     }
   }
 }
+
+namespace {
+class InterleaveState {
+  DenseMap<VPValue *, SmallVector<VPValue *>> InterleavedValues;
+
+public:
+  VPValue *getInterleavedValue(VPValue *V, unsigned IC) {
+    if (IC == 0)
+      return V;
+    if (V->isLiveIn())
+      return V;
+    return InterleavedValues[V][IC - 1];
----------------
ayalz wrote:
Assert value exists?
https://github.com/llvm/llvm-project/pull/95842
    
    
More information about the llvm-commits
mailing list