rustc_llvm: Add a -Z print-llvm-stats option to expose LLVM statistics.

LLVM has a neat [statistics] feature that tracks how often optimizations kick
in. It's very handy for optimization work. Since we expose the LLVM pass
timings, I thought it made sense to expose the LLVM statistics too.

[statistics]: https://llvm.org/docs/ProgrammersManual.html#the-statistic-class-stats-option
This commit is contained in:
Patrick Walton 2022-11-05 01:08:57 -07:00 committed by khei4
parent d873fa7382
commit 2c0c87d959

View File

@ -239,6 +239,10 @@ fn print_pass_timings(&self) {
unimplemented!();
}
fn print_statistics(&self) {
unimplemented!()
}
unsafe fn optimize(_cgcx: &CodegenContext<Self>, _diag_handler: &Handler, module: &ModuleCodegen<Self::Module>, config: &ModuleConfig) -> Result<(), FatalError> {
module.module_llvm.context.set_optimization_level(to_gcc_opt_level(config.opt_level));
Ok(())