mirror of
https://github.com/fluencelabs/wasmer
synced 2025-06-21 12:41:32 +00:00
Remove LLVMModuleCodeGenerator::signatures_raw which is a clone of a mapping available in ModuleInfo.
This commit is contained in:
@ -958,7 +958,6 @@ pub struct LLVMModuleCodeGenerator<'ctx> {
|
|||||||
intrinsics: Option<Intrinsics<'ctx>>,
|
intrinsics: Option<Intrinsics<'ctx>>,
|
||||||
functions: Vec<LLVMFunctionCodeGenerator<'ctx>>,
|
functions: Vec<LLVMFunctionCodeGenerator<'ctx>>,
|
||||||
signatures: Map<SigIndex, FunctionType<'ctx>>,
|
signatures: Map<SigIndex, FunctionType<'ctx>>,
|
||||||
signatures_raw: Map<SigIndex, FuncSig>,
|
|
||||||
function_signatures: Option<Arc<Map<FuncIndex, SigIndex>>>,
|
function_signatures: Option<Arc<Map<FuncIndex, SigIndex>>>,
|
||||||
llvm_functions: Rc<RefCell<HashMap<FuncIndex, FunctionValue<'ctx>>>>,
|
llvm_functions: Rc<RefCell<HashMap<FuncIndex, FunctionValue<'ctx>>>>,
|
||||||
func_import_count: usize,
|
func_import_count: usize,
|
||||||
@ -8711,7 +8710,6 @@ impl<'ctx> ModuleCodeGenerator<LLVMFunctionCodeGenerator<'ctx>, LLVMBackend, Cod
|
|||||||
module: ManuallyDrop::new(Rc::new(RefCell::new(module))),
|
module: ManuallyDrop::new(Rc::new(RefCell::new(module))),
|
||||||
functions: vec![],
|
functions: vec![],
|
||||||
signatures: Map::new(),
|
signatures: Map::new(),
|
||||||
signatures_raw: Map::new(),
|
|
||||||
function_signatures: None,
|
function_signatures: None,
|
||||||
llvm_functions: Rc::new(RefCell::new(HashMap::new())),
|
llvm_functions: Rc::new(RefCell::new(HashMap::new())),
|
||||||
func_import_count: 0,
|
func_import_count: 0,
|
||||||
@ -8733,7 +8731,7 @@ impl<'ctx> ModuleCodeGenerator<LLVMFunctionCodeGenerator<'ctx>, LLVMBackend, Cod
|
|||||||
|
|
||||||
fn next_function(
|
fn next_function(
|
||||||
&mut self,
|
&mut self,
|
||||||
_module_info: Arc<RwLock<ModuleInfo>>,
|
module_info: Arc<RwLock<ModuleInfo>>,
|
||||||
) -> Result<&mut LLVMFunctionCodeGenerator<'ctx>, CodegenError> {
|
) -> Result<&mut LLVMFunctionCodeGenerator<'ctx>, CodegenError> {
|
||||||
// Creates a new function and returns the function-scope code generator for it.
|
// Creates a new function and returns the function-scope code generator for it.
|
||||||
let (context, builder, intrinsics) = match self.functions.last_mut() {
|
let (context, builder, intrinsics) = match self.functions.last_mut() {
|
||||||
@ -8751,7 +8749,7 @@ impl<'ctx> ModuleCodeGenerator<LLVMFunctionCodeGenerator<'ctx>, LLVMBackend, Cod
|
|||||||
|
|
||||||
let func_index = FuncIndex::new(self.func_import_count + self.functions.len());
|
let func_index = FuncIndex::new(self.func_import_count + self.functions.len());
|
||||||
let sig_id = self.function_signatures.as_ref().unwrap()[func_index];
|
let sig_id = self.function_signatures.as_ref().unwrap()[func_index];
|
||||||
let func_sig = self.signatures_raw[sig_id].clone();
|
let func_sig = module_info.read().unwrap().signatures[sig_id].clone();
|
||||||
|
|
||||||
let function = &self.llvm_functions.borrow_mut()[&func_index];
|
let function = &self.llvm_functions.borrow_mut()[&func_index];
|
||||||
function.set_personality_function(*self.personality_func);
|
function.set_personality_function(*self.personality_func);
|
||||||
@ -8952,7 +8950,6 @@ impl<'ctx> ModuleCodeGenerator<LLVMFunctionCodeGenerator<'ctx>, LLVMBackend, Cod
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
.collect();
|
.collect();
|
||||||
self.signatures_raw = signatures.clone();
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user