Struct wasmer_compiler::engine::inner::EngineInner
source · pub struct EngineInner {
compiler: Option<Box<dyn Compiler>>,
features: Features,
code_memory: Vec<CodeMemory>,
signatures: SignatureRegistry,
}
Expand description
The inner contents of Engine
Fields§
§compiler: Option<Box<dyn Compiler>>
The compiler and cpu features
features: Features
The compiler and cpu features
code_memory: Vec<CodeMemory>
The code memory is responsible of publishing the compiled functions to memory.
signatures: SignatureRegistry
The signature registry is used mainly to operate with trampolines performantly.
Implementations§
source§impl EngineInner
impl EngineInner
sourcepub fn compiler(&self) -> Result<&dyn Compiler, CompileError>
pub fn compiler(&self) -> Result<&dyn Compiler, CompileError>
Gets the compiler associated to this engine.
sourcepub(crate) fn allocate<'a, FunctionBody, CustomSection>(
&'a mut self,
_module: &ModuleInfo,
functions: impl ExactSizeIterator<Item = &'a FunctionBody> + 'a,
function_call_trampolines: impl ExactSizeIterator<Item = &'a FunctionBody> + 'a,
dynamic_function_trampolines: impl ExactSizeIterator<Item = &'a FunctionBody> + 'a,
custom_sections: impl ExactSizeIterator<Item = &'a CustomSection> + Clone + 'a,
) -> Result<(PrimaryMap<LocalFunctionIndex, FunctionExtent>, PrimaryMap<SignatureIndex, VMTrampoline>, PrimaryMap<FunctionIndex, FunctionBodyPtr>, PrimaryMap<SectionIndex, SectionBodyPtr>), CompileError>where
FunctionBody: FunctionBodyLike<'a> + 'a,
CustomSection: CustomSectionLike<'a> + 'a,
pub(crate) fn allocate<'a, FunctionBody, CustomSection>(
&'a mut self,
_module: &ModuleInfo,
functions: impl ExactSizeIterator<Item = &'a FunctionBody> + 'a,
function_call_trampolines: impl ExactSizeIterator<Item = &'a FunctionBody> + 'a,
dynamic_function_trampolines: impl ExactSizeIterator<Item = &'a FunctionBody> + 'a,
custom_sections: impl ExactSizeIterator<Item = &'a CustomSection> + Clone + 'a,
) -> Result<(PrimaryMap<LocalFunctionIndex, FunctionExtent>, PrimaryMap<SignatureIndex, VMTrampoline>, PrimaryMap<FunctionIndex, FunctionBodyPtr>, PrimaryMap<SectionIndex, SectionBodyPtr>), CompileError>where
FunctionBody: FunctionBodyLike<'a> + 'a,
CustomSection: CustomSectionLike<'a> + 'a,
Allocate compiled functions into memory
sourcepub(crate) fn publish_compiled_code(&mut self)
pub(crate) fn publish_compiled_code(&mut self)
Make memory containing compiled code executable.
sourcepub(crate) fn publish_eh_frame(
&mut self,
eh_frame: Option<&[u8]>,
) -> Result<(), CompileError>
pub(crate) fn publish_eh_frame( &mut self, eh_frame: Option<&[u8]>, ) -> Result<(), CompileError>
Register DWARF-type exception handling information associated with the code.
sourcepub fn signatures(&self) -> &SignatureRegistry
pub fn signatures(&self) -> &SignatureRegistry
Shared signature registry.
sourcepub(crate) fn register_frame_info(
&mut self,
frame_info: GlobalFrameInfoRegistration,
)
pub(crate) fn register_frame_info( &mut self, frame_info: GlobalFrameInfoRegistration, )
Register the frame info for the code memory
Auto Trait Implementations§
impl !Freeze for EngineInner
impl !RefUnwindSafe for EngineInner
impl Send for EngineInner
impl !Sync for EngineInner
impl Unpin for EngineInner
impl !UnwindSafe for EngineInner
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.