[llvm] [BOLT][NFC] Simplify getSplitSymbolName (PR #88619)

Amir Ayupov via llvm-commits llvm-commits at lists.llvm.org
Sun Apr 14 13:32:28 PDT 2024


https://github.com/aaupov updated https://github.com/llvm/llvm-project/pull/88619

>From dabfeb6343c64b7a0490b93e2c3daa6fccdd796b Mon Sep 17 00:00:00 2001
From: Amir Ayupov <aaupov at fb.com>
Date: Sat, 13 Apr 2024 05:39:20 -0700
Subject: [PATCH 1/2] [BOLT][NFC] Simplify getSplitSymbolName

---
 bolt/lib/Rewrite/RewriteInstance.cpp | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/bolt/lib/Rewrite/RewriteInstance.cpp b/bolt/lib/Rewrite/RewriteInstance.cpp
index eea66454b289c2..8217277bedf311 100644
--- a/bolt/lib/Rewrite/RewriteInstance.cpp
+++ b/bolt/lib/Rewrite/RewriteInstance.cpp
@@ -4512,15 +4512,17 @@ void RewriteInstance::updateELFSymbolTable(
   // Get the extra symbol name of a split fragment; used in addExtraSymbols.
   auto getSplitSymbolName = [&](const FunctionFragment &FF,
                                 const ELFSymTy &FunctionSymbol) {
-    SmallString<256> SymbolName;
-    if (BC->HasWarmSection)
-      SymbolName =
-          formatv("{0}.{1}", cantFail(FunctionSymbol.getName(StringSection)),
-                  FF.getFragmentNum() == FragmentNum::warm() ? "warm" : "cold");
+    SmallString<256> SymbolName =
+        cantFail(FunctionSymbol.getName(StringSection));
+    if (BC->HasWarmSection && FF.getFragmentNum() == FragmentNum::warm())
+      SymbolName.append(".warm");
     else
-      SymbolName = formatv("{0}.cold.{1}",
-                           cantFail(FunctionSymbol.getName(StringSection)),
-                           FF.getFragmentNum().get() - 1);
+      SymbolName.append(".cold");
+
+    if (BC->HasWarmSection)
+      return SymbolName;
+
+    SymbolName.append(formatv(".{0}", FF.getFragmentNum().get() - 1).str());
     return SymbolName;
   };
 

>From 0ec8fe8c5f952c44507a1000b794c01ce3badc5c Mon Sep 17 00:00:00 2001
From: Amir Ayupov <aaupov at fb.com>
Date: Sun, 14 Apr 2024 13:31:37 -0700
Subject: [PATCH 2/2] Rename SymbolName to Name

---
 bolt/lib/Rewrite/RewriteInstance.cpp | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/bolt/lib/Rewrite/RewriteInstance.cpp b/bolt/lib/Rewrite/RewriteInstance.cpp
index 8217277bedf311..af0bca873e677d 100644
--- a/bolt/lib/Rewrite/RewriteInstance.cpp
+++ b/bolt/lib/Rewrite/RewriteInstance.cpp
@@ -4512,18 +4512,17 @@ void RewriteInstance::updateELFSymbolTable(
   // Get the extra symbol name of a split fragment; used in addExtraSymbols.
   auto getSplitSymbolName = [&](const FunctionFragment &FF,
                                 const ELFSymTy &FunctionSymbol) {
-    SmallString<256> SymbolName =
-        cantFail(FunctionSymbol.getName(StringSection));
+    SmallString<256> Name = cantFail(FunctionSymbol.getName(StringSection));
     if (BC->HasWarmSection && FF.getFragmentNum() == FragmentNum::warm())
-      SymbolName.append(".warm");
+      Name.append(".warm");
     else
-      SymbolName.append(".cold");
+      Name.append(".cold");
 
     if (BC->HasWarmSection)
-      return SymbolName;
+      return Name;
 
-    SymbolName.append(formatv(".{0}", FF.getFragmentNum().get() - 1).str());
-    return SymbolName;
+    Name.append(formatv(".{0}", FF.getFragmentNum().get() - 1).str());
+    return Name;
   };
 
   // Add extra symbols for the function.



More information about the llvm-commits mailing list