use fxprof_processed_profile::LibraryHandle;
use super::types::FastHashMap;
#[derive(Debug, Clone, Default)]
pub struct JitFunctionRecycler {
jit_functions_for_reuse_by_name_and_size: FastHashMap<(String, u32), (LibraryHandle, u32)>,
}
impl JitFunctionRecycler {
pub fn recycle(
&mut self,
name: &str,
code_size: u32,
lib_handle: LibraryHandle,
relative_address: u32,
) -> (LibraryHandle, u32) {
*self
.jit_functions_for_reuse_by_name_and_size
.entry((name.to_owned(), code_size))
.or_insert((lib_handle, relative_address))
}
}