diff --git a/llvm/include/llvm/Passes/StandardInstrumentations.h b/llvm/include/llvm/Passes/StandardInstrumentations.h index fa9c744294a66..11b2b2951ff9a 100644 --- a/llvm/include/llvm/Passes/StandardInstrumentations.h +++ b/llvm/include/llvm/Passes/StandardInstrumentations.h @@ -601,7 +601,9 @@ class StandardInstrumentations { public: StandardInstrumentations(LLVMContext &Context, bool DebugLogging, bool VerifyEach = false, - PrintPassOptions PrintPassOpts = PrintPassOptions()); + PrintPassOptions PrintPassOpts = PrintPassOptions(), + bool EnableTimePasses = false, + bool EnableTimePassesPerRun = false); // Register all the standard instrumentation callbacks. If \p FAM is nullptr // then PreservedCFGChecker is not enabled. diff --git a/llvm/lib/Passes/StandardInstrumentations.cpp b/llvm/lib/Passes/StandardInstrumentations.cpp index 036484c9c1c0c..383301a131dc8 100644 --- a/llvm/lib/Passes/StandardInstrumentations.cpp +++ b/llvm/lib/Passes/StandardInstrumentations.cpp @@ -2442,10 +2442,12 @@ void DotCfgChangeReporter::registerCallbacks( StandardInstrumentations::StandardInstrumentations( LLVMContext &Context, bool DebugLogging, bool VerifyEach, - PrintPassOptions PrintPassOpts) + PrintPassOptions PrintPassOpts, bool EnableTimePasses, + bool EnableTimePassesPerRun) : PrintPass(DebugLogging, PrintPassOpts), - OptNone(DebugLogging), - OptPassGate(Context), + TimePasses(TimePassesIsEnabled ? TimePassesIsEnabled : EnableTimePasses, + TimePassesPerRun ? TimePassesPerRun : EnableTimePassesPerRun), + OptNone(DebugLogging), OptPassGate(Context), PrintChangedIR(PrintChanged == ChangePrinter::Verbose), PrintChangedDiff(PrintChanged == ChangePrinter::DiffVerbose || PrintChanged == ChangePrinter::ColourDiffVerbose,