================ @@ -8010,15 +8010,19 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, } } - if (Args.hasArg(options::OPT_forder_file_instrumentation)) { - CmdArgs.push_back("-forder-file-instrumentation"); - // Enable order file instrumentation when ThinLTO is not on. When ThinLTO is - // on, we need to pass these flags as linker flags and that will be handled - // outside of the compiler. - if (!IsUsingLTO) { - CmdArgs.push_back("-mllvm"); - CmdArgs.push_back("-enable-order-file-instrumentation"); - } + if (const Arg *A = + Args.getLastArg(options::OPT_forder_file_instrumentation)) { + D.Diag(diag::warn_drv_deprecated_arg) + << A->getAsString(Args) << /*hasReplacement=*/true + << "-mllvm -pgo-temporal-instrumentation"; ---------------- ellishg wrote:
`-pgo-temporal-instrumentation` is stable and a significant improvement over `-forder-file-instrumentation`. I'm happy to help answer any questions about migrating to IRPGO, and I don't mind delaying the removal if necessary. I suppose I could add a frontend flag similar to how https://github.com/llvm/llvm-project/pull/109837 added [`-fprofile-generate-cold-function-coverage`](https://clang.llvm.org/docs/ClangCommandLineReference.html#cmdoption-clang-fprofile-generate-cold-function-coverage). I'll think about the naming. https://github.com/llvm/llvm-project/pull/121514 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits