[llvm] [LV][NFC] Print VPlan's transformation pipline (PR #72665)
Kolya Panchenko via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 17 07:38:26 PST 2023
https://github.com/nikolaypanchenko created https://github.com/llvm/llvm-project/pull/72665
Print `VPlan` before each pass in `VPlanTransforms::optimize` with a debug type `vplan-xforms`.
>From 0922a18b172aa636ef70ea0ab3569a6d6dd423d8 Mon Sep 17 00:00:00 2001
From: Kolya Panchenko <kolya.panchenko at sifive.com>
Date: Fri, 17 Nov 2023 07:09:08 -0800
Subject: [PATCH] [LV][NFC] Print VPlan's transformation pipline
Print `VPlan` before each pass in `VPlanTransforms::optimize` with a
debug type `vplan-xforms`.
---
.../Transforms/Vectorize/VPlanTransforms.cpp | 25 +++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp b/llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
index 0eaaa037ad5782f..142cda07adbd763 100644
--- a/llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+++ b/llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
@@ -24,6 +24,8 @@
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/PatternMatch.h"
+#define DEBUG_TYPE "vplan-xforms"
+
using namespace llvm;
using namespace llvm::PatternMatch;
@@ -871,16 +873,39 @@ static void simplifyRecipes(VPlan &Plan, LLVMContext &Ctx) {
}
void VPlanTransforms::optimize(VPlan &Plan, ScalarEvolution &SE) {
+ LLVM_DEBUG(dbgs() << "LV: --- VPlan before removeRedundantCanonicalIVs ---\n";
+ Plan.dump(); dbgs() << "\n\n");
removeRedundantCanonicalIVs(Plan);
+
+ LLVM_DEBUG(
+ dbgs() << "LV: --- VPlan before removeRedundantInductionCasts ---\n";
+ Plan.dump(); dbgs() << "\n\n");
removeRedundantInductionCasts(Plan);
+ LLVM_DEBUG(dbgs() << "LV: --- VPlan before optimizeInductions ---\n";
+ Plan.dump(); dbgs() << "\n\n");
optimizeInductions(Plan, SE);
+
+ LLVM_DEBUG(dbgs() << "LV: --- VPlan before simplifyRecipes ---\n";
+ Plan.dump(); dbgs() << "\n\n");
simplifyRecipes(Plan, SE.getContext());
+
+ LLVM_DEBUG(dbgs() << "LV: --- VPlan before removeDeadRecipes ---\n";
+ Plan.dump(); dbgs() << "\n\n");
removeDeadRecipes(Plan);
+ LLVM_DEBUG(
+ dbgs() << "LV: --- VPlan before createAndOptimizeReplicateRegions ---\n";
+ Plan.dump(); dbgs() << "\n\n");
createAndOptimizeReplicateRegions(Plan);
+ LLVM_DEBUG(
+ dbgs() << "LV: --- VPlan before removeRedundantExpandSCEVRecipes ---\n";
+ Plan.dump(); dbgs() << "\n\n");
removeRedundantExpandSCEVRecipes(Plan);
+
+ LLVM_DEBUG(dbgs() << "LV: --- VPlan before mergeBlocksIntoPredecessors ---\n";
+ Plan.dump(); dbgs() << "\n\n");
mergeBlocksIntoPredecessors(Plan);
}
More information about the llvm-commits
mailing list