From: Hiroshi Yamauchi Date: Fri, 7 Sep 2018 18:00:58 +0000 (+0000) Subject: [PGO][CHR] Small cleanup. X-Git-Tag: llvmorg-8.0.0-rc1~9226 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5fb509b7638682a854605b19cb76b89eb4df7882;p=platform%2Fupstream%2Fllvm.git [PGO][CHR] Small cleanup. Summary: Do away with demangling. It wasn't really necessary. Declared some local functions to be static. Reviewers: davidxl Reviewed By: davidxl Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D51740 llvm-svn: 341681 --- diff --git a/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp b/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp index fab95cd..7b874c7 100644 --- a/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp +++ b/llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp @@ -34,9 +34,6 @@ #include "llvm/Transforms/Utils/Cloning.h" #include "llvm/Transforms/Utils/ValueMapper.h" -#if !defined(_MSC_VER) -#include -#endif #include #include @@ -160,12 +157,6 @@ struct CHRStats { // count at the scope entry. }; -inline raw_ostream LLVM_ATTRIBUTE_UNUSED &operator<<(raw_ostream &OS, - const CHRStats &Stats) { - Stats.print(OS); - return OS; -} - // RegInfo - some properties of a Region. struct RegInfo { RegInfo() : R(nullptr), HasBranch(false) {} @@ -326,11 +317,6 @@ class CHRScope { : RegInfos(RegInfosIn), Subs(SubsIn), BranchInsertPoint(nullptr) {} }; -inline raw_ostream &operator<<(raw_ostream &OS, const CHRScope &Scope) { - Scope.print(OS); - return OS; -} - class CHR { public: CHR(Function &Fin, BlockFrequencyInfo &BFIin, DominatorTree &DTin, @@ -437,6 +423,19 @@ class CHR { } // end anonymous namespace +static inline +raw_ostream LLVM_ATTRIBUTE_UNUSED &operator<<(raw_ostream &OS, + const CHRStats &Stats) { + Stats.print(OS); + return OS; +} + +static inline +raw_ostream &operator<<(raw_ostream &OS, const CHRScope &Scope) { + Scope.print(OS); + return OS; +} + static bool shouldApply(Function &F, ProfileSummaryInfo& PSI) { if (ForceCHR) return true; @@ -444,16 +443,7 @@ static bool shouldApply(Function &F, ProfileSummaryInfo& PSI) { if (!CHRModuleList.empty() || !CHRFunctionList.empty()) { if (CHRModules.count(F.getParent()->getName())) return true; - StringRef Name = F.getName(); - if (CHRFunctions.count(Name)) - return true; - const char* DemangledName = nullptr; -#if !defined(_MSC_VER) - int Status = -1; - DemangledName = abi::__cxa_demangle(Name.str().c_str(), - nullptr, nullptr, &Status); -#endif - return DemangledName && CHRFunctions.count(DemangledName); + return CHRFunctions.count(F.getName()); } assert(PSI.hasProfileSummary() && "Empty PSI?"); @@ -462,19 +452,10 @@ static bool shouldApply(Function &F, ProfileSummaryInfo& PSI) { static void LLVM_ATTRIBUTE_UNUSED dumpIR(Function &F, const char *Label, CHRStats *Stats) { - std::string Name = F.getName().str(); - const char *DemangledName = nullptr; -#if !defined(_MSC_VER) - int Status = -1; - DemangledName = abi::__cxa_demangle(Name.c_str(), - nullptr, nullptr, &Status); -#endif - if (DemangledName == nullptr) { - DemangledName = ""; - } - std::string ModuleName = F.getParent()->getName().str(); + StringRef FuncName = F.getName(); + StringRef ModuleName = F.getParent()->getName(); CHR_DEBUG(dbgs() << "CHR IR dump " << Label << " " << ModuleName << " " - << Name); + << FuncName); if (Stats) CHR_DEBUG(dbgs() << " " << *Stats); CHR_DEBUG(dbgs() << "\n");