diff options
Diffstat (limited to 'clang/lib/Driver/Driver.cpp')
-rw-r--r-- | clang/lib/Driver/Driver.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp index f2b23431551..35e7998bf22 100644 --- a/clang/lib/Driver/Driver.cpp +++ b/clang/lib/Driver/Driver.cpp @@ -5060,3 +5060,26 @@ Driver::getIncludeExcludeOptionFlagMasks(bool IsClCompatMode) const { bool clang::driver::isOptimizationLevelFast(const ArgList &Args) { return Args.hasFlag(options::OPT_Ofast, options::OPT_O_Group, false); } + +bool clang::driver::willEmitRemarks(const ArgList &Args) { + // -fsave-optimization-record enables it. + if (Args.hasFlag(options::OPT_fsave_optimization_record, + options::OPT_fno_save_optimization_record, false)) + return true; + + // -fsave-optimization-record=<format> enables it as well. + if (Args.hasFlag(options::OPT_fsave_optimization_record_EQ, + options::OPT_fno_save_optimization_record, false)) + return true; + + // -foptimization-record-file alone enables it too. + if (Args.hasFlag(options::OPT_foptimization_record_file_EQ, + options::OPT_fno_save_optimization_record, false)) + return true; + + // -foptimization-record-passes alone enables it too. + if (Args.hasFlag(options::OPT_foptimization_record_passes_EQ, + options::OPT_fno_save_optimization_record, false)) + return true; + return false; +} |