From 8a1cc679e3a9b1d6506866ce985402a141fdbf54 Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Fri, 12 Mar 2021 18:42:17 +0100 Subject: [PATCH] [NFC] Use llvm::raw_string_ostream instead of std::stringstream That's more efficient and we don't loose any valuable feature when doing so. --- lib/Analysis/InlineAdvisor.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/lib/Analysis/InlineAdvisor.cpp b/lib/Analysis/InlineAdvisor.cpp index 9a2276a1613..469ec4c1d57 100644 --- a/lib/Analysis/InlineAdvisor.cpp +++ b/lib/Analysis/InlineAdvisor.cpp @@ -24,8 +24,6 @@ #include "llvm/Support/CommandLine.h" #include "llvm/Support/raw_ostream.h" -#include - using namespace llvm; #define DEBUG_TYPE "inline" @@ -279,8 +277,7 @@ shouldBeDeferred(Function *Caller, InlineCost IC, int &TotalSecondaryCost, } namespace llvm { -static std::basic_ostream &operator<<(std::basic_ostream &R, - const ore::NV &Arg) { +static raw_ostream &operator<<(raw_ostream &R, const ore::NV &Arg) { return R << Arg.Val; } @@ -302,7 +299,8 @@ RemarkT &operator<<(RemarkT &&R, const InlineCost &IC) { } // namespace llvm std::string llvm::inlineCostStr(const InlineCost &IC) { - std::stringstream Remark; + std::string Buffer; + raw_string_ostream Remark(Buffer); Remark << IC; return Remark.str(); } @@ -383,7 +381,8 @@ llvm::shouldInline(CallBase &CB, } std::string llvm::getCallSiteLocation(DebugLoc DLoc) { - std::ostringstream CallSiteLoc; + std::string Buffer; + raw_string_ostream CallSiteLoc(Buffer); bool First = true; for (DILocation *DIL = DLoc.get(); DIL; DIL = DIL->getInlinedAt()) { if (!First)