@@ -38,7 +38,7 @@ use tempfile::{TempDir, tempdir};
3838
3939use crate :: back:: write:: save_temp_bitcode;
4040use crate :: errors:: LtoBitcodeFromRlib ;
41- use crate :: { GccCodegenBackend , GccContext , SyncContext , to_gcc_opt_level} ;
41+ use crate :: { GccCodegenBackend , GccContext , LtoMode , SyncContext , to_gcc_opt_level} ;
4242
4343struct LtoData {
4444 // TODO(antoyo): use symbols_below_threshold.
@@ -228,7 +228,7 @@ fn fat_lto(
228228 info ! ( "linking {:?}" , name) ;
229229 match bc_decoded {
230230 SerializedModule :: Local ( ref module_buffer) => {
231- module. module_llvm . should_combine_object_files = true ;
231+ module. module_llvm . lto_mode = LtoMode :: Fat ;
232232 module
233233 . module_llvm
234234 . context
@@ -533,7 +533,7 @@ pub fn optimize_thin_module(
533533 // that LLVM Context and Module.
534534 //let llcx = llvm::LLVMRustContextCreate(cgcx.fewer_names);
535535 //let llmod_raw = parse_module(llcx, module_name, thin_module.data(), &dcx)? as *const _;
536- let mut should_combine_object_files = false ;
536+ let mut lto_mode = LtoMode :: None ;
537537 let context = match thin_module. shared . thin_buffers . get ( thin_module. idx ) {
538538 Some ( thin_buffer) => Arc :: clone ( & thin_buffer. context ) ,
539539 None => {
@@ -544,7 +544,7 @@ pub fn optimize_thin_module(
544544 SerializedModule :: Local ( ref module_buffer) => {
545545 let path = module_buffer. 0 . to_str ( ) . expect ( "path" ) ;
546546 context. add_driver_option ( path) ;
547- should_combine_object_files = true ;
547+ lto_mode = LtoMode :: Thin ;
548548 /*module.module_llvm.should_combine_object_files = true;
549549 module
550550 .module_llvm
@@ -563,7 +563,7 @@ pub fn optimize_thin_module(
563563 thin_module. name ( ) . to_string ( ) ,
564564 GccContext {
565565 context,
566- should_combine_object_files ,
566+ lto_mode ,
567567 // TODO(antoyo): use the correct relocation model here.
568568 relocation_model : RelocModel :: Pic ,
569569 temp_dir : None ,
0 commit comments