@@ -46,16 +46,16 @@ class PrintIRInstrumentation {
4646 void registerCallbacks (PassInstrumentationCallbacks &PIC);
4747
4848private:
49- void printBeforePass (StringRef PassID, Any IR);
50- void printAfterPass (StringRef PassID, Any IR);
49+ void printBeforePass (StringRef PassID, std::any IR);
50+ void printAfterPass (StringRef PassID, std::any IR);
5151 void printAfterPassInvalidated (StringRef PassID);
5252
5353 bool shouldPrintBeforePass (StringRef PassID);
5454 bool shouldPrintAfterPass (StringRef PassID);
5555
5656 using PrintModuleDesc = std::tuple<const Module *, std::string, StringRef>;
5757
58- void pushModuleDesc (StringRef PassID, Any IR);
58+ void pushModuleDesc (StringRef PassID, std::any IR);
5959 PrintModuleDesc popModuleDesc (StringRef PassID);
6060
6161 PassInstrumentationCallbacks *PIC;
@@ -71,15 +71,15 @@ class OptNoneInstrumentation {
7171
7272private:
7373 bool DebugLogging;
74- bool shouldRun (StringRef PassID, Any IR);
74+ bool shouldRun (StringRef PassID, std::any IR);
7575};
7676
7777class OptPassGateInstrumentation {
7878 LLVMContext &Context;
7979 bool HasWrittenIR = false ;
8080public:
8181 OptPassGateInstrumentation (LLVMContext &Context) : Context(Context) {}
82- bool shouldRun (StringRef PassName, Any IR);
82+ bool shouldRun (StringRef PassName, std::any IR);
8383 void registerCallbacks (PassInstrumentationCallbacks &PIC);
8484};
8585
@@ -181,9 +181,9 @@ template <typename IRUnitT> class ChangeReporter {
181181
182182 // Determine if this pass/IR is interesting and if so, save the IR
183183 // otherwise it is left on the stack without data.
184- void saveIRBeforePass (Any IR, StringRef PassID, StringRef PassName);
184+ void saveIRBeforePass (std::any IR, StringRef PassID, StringRef PassName);
185185 // Compare the IR from before the pass after the pass.
186- void handleIRAfterPass (Any IR, StringRef PassID, StringRef PassName);
186+ void handleIRAfterPass (std::any IR, StringRef PassID, StringRef PassName);
187187 // Handle the situation where a pass is invalidated.
188188 void handleInvalidatedPass (StringRef PassID);
189189
@@ -192,16 +192,16 @@ template <typename IRUnitT> class ChangeReporter {
192192 void registerRequiredCallbacks (PassInstrumentationCallbacks &PIC);
193193
194194 // Called on the first IR processed.
195- virtual void handleInitialIR (Any IR) = 0;
195+ virtual void handleInitialIR (std::any IR) = 0;
196196 // Called before and after a pass to get the representation of the IR.
197- virtual void generateIRRepresentation (Any IR, StringRef PassID,
197+ virtual void generateIRRepresentation (std::any IR, StringRef PassID,
198198 IRUnitT &Output) = 0;
199199 // Called when the pass is not iteresting.
200200 virtual void omitAfter (StringRef PassID, std::string &Name) = 0;
201201 // Called when an interesting IR has changed.
202202 virtual void handleAfter (StringRef PassID, std::string &Name,
203203 const IRUnitT &Before, const IRUnitT &After,
204- Any ) = 0;
204+ std::any ) = 0;
205205 // Called when an interesting pass is invalidated.
206206 virtual void handleInvalidated (StringRef PassID) = 0;
207207 // Called when the IR or pass is not interesting.
@@ -226,7 +226,7 @@ class TextChangeReporter : public ChangeReporter<IRUnitT> {
226226 TextChangeReporter (bool Verbose);
227227
228228 // Print a module dump of the first IR that is changed.
229- void handleInitialIR (Any IR) override ;
229+ void handleInitialIR (std::any IR) override ;
230230 // Report that the IR was omitted because it did not change.
231231 void omitAfter (StringRef PassID, std::string &Name) override ;
232232 // Report that the pass was invalidated.
@@ -254,12 +254,12 @@ class IRChangedPrinter : public TextChangeReporter<std::string> {
254254
255255protected:
256256 // Called before and after a pass to get the representation of the IR.
257- void generateIRRepresentation (Any IR, StringRef PassID,
257+ void generateIRRepresentation (std::any IR, StringRef PassID,
258258 std::string &Output) override ;
259259 // Called when an interesting IR has changed.
260260 void handleAfter (StringRef PassID, std::string &Name,
261261 const std::string &Before, const std::string &After,
262- Any ) override ;
262+ std::any ) override ;
263263};
264264
265265class IRChangedTester : public IRChangedPrinter {
@@ -272,7 +272,7 @@ class IRChangedTester : public IRChangedPrinter {
272272 void handleIR (const std::string &IR, StringRef PassID);
273273
274274 // Check initial IR
275- void handleInitialIR (Any IR) override ;
275+ void handleInitialIR (std::any IR) override ;
276276 // Do nothing.
277277 void omitAfter (StringRef PassID, std::string &Name) override ;
278278 // Do nothing.
@@ -285,7 +285,7 @@ class IRChangedTester : public IRChangedPrinter {
285285 // Call test as interesting IR has changed.
286286 void handleAfter (StringRef PassID, std::string &Name,
287287 const std::string &Before, const std::string &After,
288- Any ) override ;
288+ std::any ) override ;
289289};
290290
291291// Information that needs to be saved for a basic block in order to compare
@@ -385,7 +385,7 @@ template <typename T> class IRComparer {
385385 CompareFunc);
386386
387387 // Analyze \p IR and build the IR representation in \p Data.
388- static void analyzeIR (Any IR, IRDataT<T> &Data);
388+ static void analyzeIR (std::any IR, IRDataT<T> &Data);
389389
390390protected:
391391 // Generate the data for \p F into \p Data.
@@ -411,13 +411,13 @@ class InLineChangePrinter : public TextChangeReporter<IRDataT<EmptyData>> {
411411
412412protected:
413413 // Create a representation of the IR.
414- void generateIRRepresentation (Any IR, StringRef PassID,
414+ void generateIRRepresentation (std::any IR, StringRef PassID,
415415 IRDataT<EmptyData> &Output) override ;
416416
417417 // Called when an interesting IR has changed.
418418 void handleAfter (StringRef PassID, std::string &Name,
419419 const IRDataT<EmptyData> &Before,
420- const IRDataT<EmptyData> &After, Any ) override ;
420+ const IRDataT<EmptyData> &After, std::any ) override ;
421421
422422 void handleFunctionCompare (StringRef Name, StringRef Prefix, StringRef PassID,
423423 StringRef Divider, bool InModule, unsigned Minor,
@@ -449,7 +449,7 @@ class TimeProfilingPassesHandler {
449449
450450private:
451451 // Implementation of pass instrumentation callbacks.
452- void runBeforePass (StringRef PassID, Any IR);
452+ void runBeforePass (StringRef PassID, std::any IR);
453453 void runAfterPass ();
454454};
455455
@@ -497,16 +497,16 @@ class DotCfgChangeReporter : public ChangeReporter<IRDataT<DCData>> {
497497 bool initializeHTML ();
498498
499499 // Called on the first IR processed.
500- void handleInitialIR (Any IR) override ;
500+ void handleInitialIR (std::any IR) override ;
501501 // Called before and after a pass to get the representation of the IR.
502- void generateIRRepresentation (Any IR, StringRef PassID,
502+ void generateIRRepresentation (std::any IR, StringRef PassID,
503503 IRDataT<DCData> &Output) override ;
504504 // Called when the pass is not iteresting.
505505 void omitAfter (StringRef PassID, std::string &Name) override ;
506506 // Called when an interesting IR has changed.
507507 void handleAfter (StringRef PassID, std::string &Name,
508508 const IRDataT<DCData> &Before, const IRDataT<DCData> &After,
509- Any ) override ;
509+ std::any ) override ;
510510 // Called when an interesting pass is invalidated.
511511 void handleInvalidated (StringRef PassID) override ;
512512 // Called when the IR or pass is not interesting.
0 commit comments