rust/compiler/rustc_interface/src
Michael Benfield a17193dbb9 Enable AutoFDO.
This largely involves implementing the options debug-info-for-profiling
and profile-sample-use and forwarding them on to LLVM.

AutoFDO can be used on x86-64 Linux like this:
rustc -O -Cdebug-info-for-profiling main.rs -o main
perf record -b ./main
create_llvm_prof --binary=main --out=code.prof
rustc -O -Cprofile-sample-use=code.prof main.rs -o main2

Now `main2` will have feedback directed optimization applied to it.

The create_llvm_prof tool can be obtained from this github repository:
https://github.com/google/autofdo

Fixes #64892.
2021-10-06 19:36:52 +00:00
..
callbacks.rs Fix clippy lints 2021-10-01 23:17:19 +02:00
interface.rs Fix clippy lints 2021-10-01 23:17:19 +02:00
lib.rs Simplify scoped_thread 2021-09-23 12:56:59 -04:00
passes.rs Auto merge of #89266 - cjgillot:session-ich, r=michaelwoerister 2021-10-05 09:45:11 +00:00
proc_macro_decls.rs Avoid more invocations of hir_crate query. 2021-09-29 23:16:47 +02:00
queries.rs Fix clippy lints 2021-10-01 23:17:19 +02:00
tests.rs Enable AutoFDO. 2021-10-06 19:36:52 +00:00
util.rs Fix clippy lints 2021-10-01 23:17:19 +02:00