[llvm] [NFC] llvm-cgdata use StringRef in exitWithError to reduce construction (PR #120771)

Amr Hesham via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 20 08:52:46 PST 2024


https://github.com/AmrDeveloper created https://github.com/llvm/llvm-project/pull/120771

Replace `static void exitWithError(Twine Message, std::string Whence = "", std::string Hint = "")` std::string with StringRef to remove constructing Strings on every call or passing by value

Fixes: #100065

>From ec5fbedbbfe5de6cbcb805fc44db8a54260f8e36 Mon Sep 17 00:00:00 2001
From: AmrDeveloper <amr96 at programmer.net>
Date: Fri, 20 Dec 2024 17:50:04 +0100
Subject: [PATCH] [NFC] llvm-cgdata use StringRef in exitWithError to reduce
 construction

---
 llvm/tools/llvm-cgdata/llvm-cgdata.cpp | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/llvm/tools/llvm-cgdata/llvm-cgdata.cpp b/llvm/tools/llvm-cgdata/llvm-cgdata.cpp
index 9e3800f5bfbbc6..5c028311b06b5f 100644
--- a/llvm/tools/llvm-cgdata/llvm-cgdata.cpp
+++ b/llvm/tools/llvm-cgdata/llvm-cgdata.cpp
@@ -83,8 +83,8 @@ static CGDataAction Action;
 static std::optional<CGDataFormat> OutputFormat;
 static std::vector<std::string> InputFilenames;
 
-static void exitWithError(Twine Message, std::string Whence = "",
-                          std::string Hint = "") {
+static void exitWithError(Twine Message, StringRef Whence = "",
+                          StringRef Hint = "") {
   WithColor::error();
   if (!Whence.empty())
     errs() << Whence << ": ";
@@ -97,16 +97,16 @@ static void exitWithError(Twine Message, std::string Whence = "",
 static void exitWithError(Error E, StringRef Whence = "") {
   if (E.isA<CGDataError>()) {
     handleAllErrors(std::move(E), [&](const CGDataError &IPE) {
-      exitWithError(IPE.message(), std::string(Whence));
+      exitWithError(IPE.message(), Whence);
     });
     return;
   }
 
-  exitWithError(toString(std::move(E)), std::string(Whence));
+  exitWithError(toString(std::move(E)), Whence);
 }
 
 static void exitWithErrorCode(std::error_code EC, StringRef Whence = "") {
-  exitWithError(EC.message(), std::string(Whence));
+  exitWithError(EC.message(), Whence);
 }
 
 static int convert_main(int argc, const char *argv[]) {



More information about the llvm-commits mailing list