@@ -25,7 +25,6 @@ use tracing::{debug, info};
25
25
use crate :: back:: write:: {
26
26
self , CodegenDiagnosticsStage , DiagnosticHandlers , bitcode_section_name, save_temp_bitcode,
27
27
} ;
28
- use crate :: common:: AsCCharPtr ;
29
28
use crate :: errors:: {
30
29
DynamicLinkingWithLTO , LlvmError , LtoBitcodeFromRlib , LtoDisallowed , LtoDylib , LtoProcMacro ,
31
30
} ;
@@ -602,23 +601,9 @@ pub(crate) fn run_pass_manager(
602
601
// This code is based off the code found in llvm's LTO code generator:
603
602
// llvm/lib/LTO/LTOCodeGenerator.cpp
604
603
debug ! ( "running the pass manager" ) ;
605
- unsafe {
606
- if !llvm:: LLVMRustHasModuleFlag (
607
- module. module_llvm . llmod ( ) ,
608
- "LTOPostLink" . as_c_char_ptr ( ) ,
609
- 11 ,
610
- ) {
611
- llvm:: LLVMRustAddModuleFlagU32 (
612
- module. module_llvm . llmod ( ) ,
613
- llvm:: LLVMModFlagBehavior :: Error ,
614
- c"LTOPostLink" . as_ptr ( ) ,
615
- 1 ,
616
- ) ;
617
- }
618
- let opt_stage = if thin { llvm:: OptStage :: ThinLTO } else { llvm:: OptStage :: FatLTO } ;
619
- let opt_level = config. opt_level . unwrap_or ( config:: OptLevel :: No ) ;
620
- write:: llvm_optimize ( cgcx, dcx, module, config, opt_level, opt_stage) ?;
621
- }
604
+ let opt_stage = if thin { llvm:: OptStage :: ThinLTO } else { llvm:: OptStage :: FatLTO } ;
605
+ let opt_level = config. opt_level . unwrap_or ( config:: OptLevel :: No ) ;
606
+ unsafe { write:: llvm_optimize ( cgcx, dcx, module, config, opt_level, opt_stage) } ?;
622
607
debug ! ( "lto done" ) ;
623
608
Ok ( ( ) )
624
609
}
0 commit comments