[llvm] [SROA] Fix NumPromoted statistic for SROA pass. (PR #115586)

Afanasyev Ivan via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 8 22:10:44 PST 2024


https://github.com/ivafanas created https://github.com/llvm/llvm-project/pull/115586

`NumPromoted` stat should not be increased if `SROASkipMem2Reg` is set and nothing is changed.

>From 1f206aa1bd7eef7b2753e7fc2b0942913f4b920e Mon Sep 17 00:00:00 2001
From: Ivan Afanasyev <ivafanas at gmail.com>
Date: Sat, 9 Nov 2024 13:03:38 +0700
Subject: [PATCH] [SROA] Fix NumPromoted statistic for SROA pass.

---
 llvm/lib/Transforms/Scalar/SROA.cpp | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/llvm/lib/Transforms/Scalar/SROA.cpp b/llvm/lib/Transforms/Scalar/SROA.cpp
index 3b01089962e29c..4a23e2bee5ba25 100644
--- a/llvm/lib/Transforms/Scalar/SROA.cpp
+++ b/llvm/lib/Transforms/Scalar/SROA.cpp
@@ -5590,12 +5590,11 @@ bool SROA::promoteAllocas(Function &F) {
   if (PromotableAllocas.empty())
     return false;
 
-  NumPromoted += PromotableAllocas.size();
-
   if (SROASkipMem2Reg) {
     LLVM_DEBUG(dbgs() << "Not promoting allocas with mem2reg!\n");
   } else {
     LLVM_DEBUG(dbgs() << "Promoting allocas with mem2reg...\n");
+    NumPromoted += PromotableAllocas.size();
     PromoteMemToReg(PromotableAllocas.getArrayRef(), DTU->getDomTree(), AC);
   }
 



More information about the llvm-commits mailing list