@@ -122,20 +122,20 @@ void RegAllocEvictionAdvisorAnalysis::initializeProvider(
122
122
case RegAllocEvictionAdvisorAnalysisLegacy::AdvisorMode::Default:
123
123
Provider.reset (
124
124
new DefaultEvictionAdvisorProvider (/* NotAsRequested=*/ false , Ctx));
125
- break ;
125
+ return ;
126
126
case RegAllocEvictionAdvisorAnalysisLegacy::AdvisorMode::Development:
127
127
#if defined(LLVM_HAVE_TFLITE)
128
128
Provider.reset (createDevelopmentModeAdvisorProvider (Ctx));
129
+ #else
130
+ Provider.reset (
131
+ new DefaultEvictionAdvisorProvider (/* NotAsRequested=*/ true , Ctx));
129
132
#endif
130
- break ;
133
+ assert (Provider && " EvictionAdvisorProvider cannot be null" );
134
+ return ;
131
135
case RegAllocEvictionAdvisorAnalysisLegacy::AdvisorMode::Release:
132
136
Provider.reset (createReleaseModeAdvisorProvider (Ctx));
133
- break ;
137
+ return ;
134
138
}
135
-
136
- if (!Provider)
137
- Provider.reset (
138
- new DefaultEvictionAdvisorProvider (/* NotAsRequested=*/ true , Ctx));
139
139
}
140
140
141
141
RegAllocEvictionAdvisorAnalysis::Result
@@ -151,20 +151,21 @@ Pass *llvm::callDefaultCtor<RegAllocEvictionAdvisorAnalysisLegacy>() {
151
151
Pass *Ret = nullptr ;
152
152
switch (Mode) {
153
153
case RegAllocEvictionAdvisorAnalysisLegacy::AdvisorMode::Default:
154
- Ret = new DefaultEvictionAdvisorAnalysisLegacy (/* NotAsRequested*/ false );
154
+ return new DefaultEvictionAdvisorAnalysisLegacy (/* NotAsRequested*/ false );
155
+ case RegAllocEvictionAdvisorAnalysisLegacy::AdvisorMode::Release:
156
+ Ret = createReleaseModeAdvisorAnalysisLegacy ();
155
157
break ;
156
158
case RegAllocEvictionAdvisorAnalysisLegacy::AdvisorMode::Development:
157
159
#if defined(LLVM_HAVE_TFLITE)
158
160
Ret = createDevelopmentModeAdvisorAnalysisLegacy ();
159
161
#endif
160
162
break ;
161
- case RegAllocEvictionAdvisorAnalysisLegacy::AdvisorMode::Release:
162
- Ret = createReleaseModeAdvisorAnalysisLegacy ();
163
- break ;
164
163
}
165
- if (Ret)
166
- return Ret;
167
- return new DefaultEvictionAdvisorAnalysisLegacy (/* NotAsRequested*/ true );
164
+
165
+ // release or development mode advisor may not be supported
166
+ if (!Ret)
167
+ Ret = new DefaultEvictionAdvisorAnalysisLegacy (/* NotAsRequested*/ true );
168
+ return Ret;
168
169
}
169
170
170
171
StringRef RegAllocEvictionAdvisorAnalysisLegacy::getPassName () const {
0 commit comments