Deprecate -forder-file-instrumentation in favor of Temporal Profiling

I am deprecating -forder-file-instrumentation and -enable-order-file-instrumentation in favor of Temporal Profiling for IRPGO as discussed in the RFC.

Both of these features can be used to instrumented startup function order, but Temporal Profiling is better integrated into IRPGO and is actively maintained and used. I believe that if anyone is using -forder-file-instrumentation they can switch over to IRPGO. If not, please reach out and I might be able to help.

I’ve published Deprecate order file instrumentation by ellishg · Pull Request #121514 · llvm/llvm-project · GitHub to deprecate the flag now, but I won’t remove the feature until LLVM 20 which I think should be released in March. I believe Temporal Profiling has been available since LLVM 17.

CC @manman-ren @davidxl @michaeleisel @serge-sans-paille (folks who have asked about this flag before)

3 Likes

In [InstrProf] Add frontend temporal profiling flag by ellishg · Pull Request #122385 · llvm/llvm-project · GitHub I added the -ftemporal-profile frontend clang flag and added some documentation to describe how to use Temporal Profiling.
Clang Compiler User’s Manual — Clang 20.0.0git documentation

This should help people migrate away from the deprecated flags.

-forder-file-instrumentation has been removed

1 Like