@@ -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 {
@@ -741,11 +738,7 @@ pub(crate) unsafe fn optimize_thin_module(
741738 // crates but for locally codegened modules we may be able to reuse
742739 // that LLVM Context and Module.
743740 let module_llvm = ModuleLlvm :: parse ( cgcx, module_name, thin_module. data ( ) , dcx) ?;
744- let mut module = ModuleCodegen {
745- module_llvm,
746- name : thin_module. name ( ) . to_string ( ) ,
747- kind : ModuleKind :: Regular ,
748- } ;
741+ let mut module = ModuleCodegen :: new_regular ( thin_module. name ( ) , module_llvm) ;
749742 {
750743 let target = & * module. module_llvm . tm ;
751744 let llmod = module. module_llvm . llmod ( ) ;
0 commit comments