[llvm] r341681 - [PGO][CHR] Small cleanup.
Hiroshi Yamauchi via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 7 11:00:59 PDT 2018
Author: yamauchi
Date: Fri Sep 7 11:00:58 2018
New Revision: 341681
URL: http://llvm.org/viewvc/llvm-project?rev=341681&view=rev
Log:
[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
Modified:
llvm/trunk/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
Modified: llvm/trunk/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Instrumentation/ControlHeightReduction.cpp?rev=341681&r1=341680&r2=341681&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Instrumentation/ControlHeightReduction.cpp (original)
+++ llvm/trunk/lib/Transforms/Instrumentation/ControlHeightReduction.cpp Fri Sep 7 11:00:58 2018
@@ -34,9 +34,6 @@
#include "llvm/Transforms/Utils/Cloning.h"
#include "llvm/Transforms/Utils/ValueMapper.h"
-#if !defined(_MSC_VER)
-#include <cxxabi.h>
-#endif
#include <set>
#include <sstream>
@@ -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, Pro
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, Pro
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 = "<NOT-MANGLED>";
- }
- 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");
More information about the llvm-commits
mailing list