@@ -306,11 +306,8 @@ fn fat_lto(
306306 assert ! ( !serialized_modules. is_empty( ) , "must have at least one serialized module" ) ;
307307 let ( buffer, name) = serialized_modules. remove ( 0 ) ;
308308 info ! ( "no in-memory regular modules to choose from, parsing {:?}" , name) ;
309- ModuleCodegen {
310- module_llvm : ModuleLlvm :: parse ( cgcx, & name, buffer. data ( ) , dcx) ?,
311- name : name. into_string ( ) . unwrap ( ) ,
312- kind : ModuleKind :: Regular ,
313- }
309+ let llvm_module = ModuleLlvm :: parse ( cgcx, & name, buffer. data ( ) , dcx) ?;
310+ ModuleCodegen :: new_regular ( name. into_string ( ) . unwrap ( ) , llvm_module)
314311 }
315312 } ;
316313 {
@@ -778,11 +775,7 @@ pub(crate) unsafe fn optimize_thin_module(
778775 // crates but for locally codegened modules we may be able to reuse
779776 // that LLVM Context and Module.
780777 let module_llvm = ModuleLlvm :: parse ( cgcx, module_name, thin_module. data ( ) , dcx) ?;
781- let mut module = ModuleCodegen {
782- module_llvm,
783- name : thin_module. name ( ) . to_string ( ) ,
784- kind : ModuleKind :: Regular ,
785- } ;
778+ let mut module = ModuleCodegen :: new_regular ( thin_module. name ( ) , module_llvm) ;
786779 {
787780 let target = & * module. module_llvm . tm ;
788781 let llmod = module. module_llvm . llmod ( ) ;
0 commit comments