Skip to content

Commit 956c17b

Browse files
committed
Suggestions and remove createProvider methods
1 parent b0051b0 commit 956c17b

File tree

3 files changed

+25
-31
lines changed

3 files changed

+25
-31
lines changed

llvm/include/llvm/CodeGen/RegAllocPriorityAdvisor.h

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,11 +89,6 @@ class RegAllocPriorityAdvisorProvider {
8989
const AdvisorMode Mode;
9090
};
9191

92-
RegAllocPriorityAdvisorProvider *createReleaseModePriorityAdvisorProvider();
93-
94-
RegAllocPriorityAdvisorProvider *
95-
createDevelopmentModePriorityAdvisorProvider(LLVMContext &Ctx);
96-
9792
class RegAllocPriorityAdvisorAnalysis
9893
: public AnalysisInfoMixin<RegAllocPriorityAdvisorAnalysis> {
9994
static AnalysisKey Key;
@@ -116,6 +111,8 @@ class RegAllocPriorityAdvisorAnalysis
116111

117112
private:
118113
void initializeProvider(LLVMContext &Ctx);
114+
void initializeMLProvider(RegAllocPriorityAdvisorProvider::AdvisorMode Mode,
115+
LLVMContext &Ctx);
119116
std::unique_ptr<RegAllocPriorityAdvisorProvider> Provider;
120117
};
121118

llvm/lib/CodeGen/MLRegAllocPriorityAdvisor.cpp

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -146,10 +146,6 @@ class ReleaseModePriorityAdvisorProvider final
146146
std::unique_ptr<MLModelRunner> Runner;
147147
};
148148

149-
RegAllocPriorityAdvisorProvider *createReleaseModePriorityAdvisorProvider() {
150-
return new ReleaseModePriorityAdvisorProvider();
151-
}
152-
153149
class ReleaseModePriorityAdvisorAnalysisLegacy final
154150
: public RegAllocPriorityAdvisorAnalysisLegacy {
155151
public:
@@ -176,8 +172,6 @@ class ReleaseModePriorityAdvisorAnalysisLegacy final
176172
Provider = std::make_unique<ReleaseModePriorityAdvisorProvider>();
177173
return false;
178174
}
179-
180-
// std::unique_ptr<ReleaseModePriorityAdvisorProvider> Provider;
181175
};
182176

183177
// ===================================
@@ -283,11 +277,6 @@ class DevelopmentModePriorityAdvisorProvider final
283277
std::unique_ptr<Logger> Log;
284278
};
285279

286-
RegAllocPriorityAdvisorProvider *
287-
createDevelopmentModePriorityAdvisorProvider(LLVMContext &Ctx) {
288-
return new DevelopmentModePriorityAdvisorProvider(Ctx);
289-
}
290-
291280
class DevelopmentModePriorityAdvisorAnalysisLegacy final
292281
: public RegAllocPriorityAdvisorAnalysisLegacy {
293282
public:
@@ -410,3 +399,21 @@ DevelopmentModePriorityAdvisor::getPriority(const LiveInterval &LI) const {
410399
}
411400

412401
#endif // #ifdef LLVM_HAVE_TFLITE
402+
403+
void RegAllocPriorityAdvisorAnalysis::initializeMLProvider(
404+
RegAllocPriorityAdvisorProvider::AdvisorMode Mode, LLVMContext &Ctx) {
405+
if (Provider)
406+
return;
407+
switch (Mode) {
408+
case RegAllocPriorityAdvisorProvider::AdvisorMode::Development:
409+
#if defined(LLVM_HAVE_TFLITE)
410+
Provider.reset(new DevelopmentModePriorityAdvisorProvider(Ctx));
411+
#endif
412+
break;
413+
case RegAllocPriorityAdvisorProvider::AdvisorMode::Release:
414+
Provider.reset(new ReleaseModePriorityAdvisorProvider());
415+
break;
416+
default:
417+
break;
418+
}
419+
}

llvm/lib/CodeGen/RegAllocPriorityAdvisor.cpp

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -97,24 +97,14 @@ class DefaultPriorityAdvisorAnalysisLegacy final
9797
void RegAllocPriorityAdvisorAnalysis::initializeProvider(LLVMContext &Ctx) {
9898
if (Provider)
9999
return;
100-
101-
switch (Mode) {
102-
case RegAllocPriorityAdvisorProvider::AdvisorMode::Default:
100+
if (Mode == RegAllocPriorityAdvisorProvider::AdvisorMode::Default)
103101
Provider.reset(
104-
new DefaultPriorityAdvisorProvider(/*NotAsRequested*/ false, Ctx));
105-
break;
106-
case RegAllocPriorityAdvisorProvider::AdvisorMode::Development:
107-
#if defined(LLVM_HAVE_TFLITE)
108-
Provider.reset(createDevelopmentModePriorityAdvisorProvider(Ctx));
109-
#endif
110-
break;
111-
case RegAllocPriorityAdvisorProvider::AdvisorMode::Release:
112-
Provider.reset(createReleaseModePriorityAdvisorProvider());
113-
break;
114-
}
102+
new DefaultPriorityAdvisorProvider(/*NotAsRequested=*/false, Ctx));
103+
else
104+
initializeMLProvider(Mode, Ctx);
115105
if (!Provider)
116106
Provider.reset(
117-
new DefaultPriorityAdvisorProvider(/*NotAsRequested*/ true, Ctx));
107+
new DefaultPriorityAdvisorProvider(/*NotAsRequested=*/true, Ctx));
118108
}
119109

120110
AnalysisKey RegAllocPriorityAdvisorAnalysis::Key;

0 commit comments

Comments
 (0)