[llvm] [VPlan] Version VPValue names in VPSlotTracker. (PR #81411)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 13 00:56:51 PDT 2024


================
@@ -1373,32 +1362,84 @@ VPInterleavedAccessInfo::VPInterleavedAccessInfo(VPlan &Plan,
   visitRegion(Plan.getVectorLoopRegion(), Old2New, IAI);
 }
 
-void VPSlotTracker::assignSlot(const VPValue *V) {
-  if (V->getUnderlyingValue())
+void VPSlotTracker::assignSlotOrName(const VPValue *V) {
+  auto *UV = V->getUnderlyingValue();
+  if (!UV) {
+    assert(!VPValue2Name.contains(V) && "VPValue already has a slot!");
+    VPValue2Name[V] = (Twine("vp<%") + Twine(NextSlot) + ">").str();
+    NextSlot++;
     return;
-  assert(!Slots.contains(V) && "VPValue already has a slot!");
-  Slots[V] = NextSlot++;
+  }
+  std::string Name;
+  raw_string_ostream S(Name);
+  UV->printAsOperand(S, false);
+  versionName(V, Name);
----------------
fhahn wrote:

inlined, thanks!

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


More information about the llvm-commits mailing list