@@ -183,7 +183,9 @@ RAGreedyLegacy::RAGreedyLegacy(const RegAllocFilterFunc F)
183
183
initializeRAGreedyLegacyPass (*PassRegistry::getPassRegistry ());
184
184
}
185
185
186
- RAGreedy::RAGreedy (const RegAllocFilterFunc F) : RegAllocBase(F) {}
186
+ RAGreedy::RAGreedy (RequiredAnalyses &Analyses, const RegAllocFilterFunc F) : RegAllocBase(F) {
187
+ setAnalyses (Analyses);
188
+ }
187
189
188
190
void RAGreedy::setAnalyses (RequiredAnalyses &Analyses) {
189
191
VRM = Analyses.VRM ;
@@ -204,14 +206,13 @@ void RAGreedy::setAnalyses(RequiredAnalyses &Analyses) {
204
206
205
207
void RAGreedyPass::printPipeline (raw_ostream &OS, function_ref<StringRef(StringRef)> MapClassName2PassName) const {
206
208
StringRef FilterName = Opts.FilterName .empty () ? " all" : Opts.FilterName ;
207
- OS << " regallocgreedy<" << FilterName << " > " ;
209
+ OS << " regallocgreedy<" << FilterName << ' > ' ;
208
210
}
209
211
210
212
PreservedAnalyses RAGreedyPass::run (MachineFunction &MF,
211
213
MachineFunctionAnalysisManager &MFAM) {
212
214
MFPropsModifier _ (*this , MF);
213
215
214
- RAGreedy Impl (Opts.Filter );
215
216
RAGreedy::RequiredAnalyses Analyses;
216
217
217
218
Analyses.LIS = &MFAM.getResult <LiveIntervalsAnalysis>(MF);
@@ -231,7 +232,8 @@ PreservedAnalyses RAGreedyPass::run(MachineFunction &MF,
231
232
MFAM.getResult <RegAllocPriorityAdvisorAnalysis>(MF).Provider ;
232
233
Analyses.VRM = &MFAM.getResult <VirtRegMapAnalysis>(MF);
233
234
234
- Impl.setAnalyses (Analyses);
235
+ RAGreedy Impl (Analyses, Opts.Filter );
236
+
235
237
bool Changed = Impl.run (MF);
236
238
if (!Changed)
237
239
return PreservedAnalyses::all ();
@@ -248,7 +250,6 @@ PreservedAnalyses RAGreedyPass::run(MachineFunction &MF,
248
250
}
249
251
250
252
bool RAGreedyLegacy::runOnMachineFunction (MachineFunction &MF) {
251
- RAGreedy Impl (F);
252
253
253
254
RAGreedy::RequiredAnalyses Analyses;
254
255
Analyses.VRM = &getAnalysis<VirtRegMapWrapperLegacy>().getVRM ();
@@ -271,7 +272,7 @@ bool RAGreedyLegacy::runOnMachineFunction(MachineFunction &MF) {
271
272
Analyses.PriorityProvider =
272
273
&getAnalysis<RegAllocPriorityAdvisorAnalysisLegacy>().getProvider ();
273
274
274
- Impl. setAnalyses (Analyses);
275
+ RAGreedy Impl (Analyses, F );
275
276
return Impl.run (MF);
276
277
}
277
278
0 commit comments