pub struct AArch64Backend { /* private fields */ }
Available on crate feature
arm64
only.Expand description
An AArch64 backend.
Implementations§
Source§impl AArch64Backend
impl AArch64Backend
Sourcepub fn new_with_flags(
triple: Triple,
flags: Flags,
isa_flags: Flags,
) -> AArch64Backend
pub fn new_with_flags( triple: Triple, flags: Flags, isa_flags: Flags, ) -> AArch64Backend
Create a new AArch64 backend with the given (shared) flags.
Trait Implementations§
Source§impl Display for AArch64Backend
impl Display for AArch64Backend
Source§impl TargetIsa for AArch64Backend
impl TargetIsa for AArch64Backend
Source§fn compile_function(
&self,
func: &Function,
domtree: &DominatorTree,
want_disasm: bool,
ctrl_plane: &mut ControlPlane,
) -> CodegenResult<CompiledCodeBase<Stencil>>
fn compile_function( &self, func: &Function, domtree: &DominatorTree, want_disasm: bool, ctrl_plane: &mut ControlPlane, ) -> CodegenResult<CompiledCodeBase<Stencil>>
Compile the given function.
Source§fn flags(&self) -> &Flags
fn flags(&self) -> &Flags
Get the ISA-independent flags that were used to make this trait object.
Source§fn isa_flags(&self) -> Vec<Value>
fn isa_flags(&self) -> Vec<Value>
Get the ISA-dependent flag values that were used to make this trait object.
Source§fn is_branch_protection_enabled(&self) -> bool
fn is_branch_protection_enabled(&self) -> bool
Get a flag indicating whether branch protection is enabled.
Source§fn dynamic_vector_bytes(&self, _dyn_ty: Type) -> u32
fn dynamic_vector_bytes(&self, _dyn_ty: Type) -> u32
Get the ISA-dependent maximum vector register size, in bytes.
Source§fn emit_unwind_info(
&self,
result: &CompiledCode,
kind: UnwindInfoKind,
) -> CodegenResult<Option<UnwindInfo>>
fn emit_unwind_info( &self, result: &CompiledCode, kind: UnwindInfoKind, ) -> CodegenResult<Option<UnwindInfo>>
Available on crate feature
unwind
only.Creates unwind information for the function. Read more
Source§fn create_systemv_cie(&self) -> Option<CommonInformationEntry>
fn create_systemv_cie(&self) -> Option<CommonInformationEntry>
Available on crate feature
unwind
only.Creates a new System V Common Information Entry for the ISA. Read more
Source§fn text_section_builder(&self, num_funcs: usize) -> Box<dyn TextSectionBuilder>
fn text_section_builder(&self, num_funcs: usize) -> Box<dyn TextSectionBuilder>
Returns an object that can be used to build the text section of an
executable. Read more
Source§fn map_regalloc_reg_to_dwarf(
&self,
reg: Reg,
) -> Result<u16, RegisterMappingError>
fn map_regalloc_reg_to_dwarf( &self, reg: Reg, ) -> Result<u16, RegisterMappingError>
Available on crate feature
unwind
only.Map a regalloc::Reg to its corresponding DWARF register.
Source§fn function_alignment(&self) -> FunctionAlignment
fn function_alignment(&self) -> FunctionAlignment
Returns the minimum function alignment and the preferred function
alignment, for performance, required by this ISA.
Source§fn page_size_align_log2(&self) -> u8
fn page_size_align_log2(&self) -> u8
The log2 of the target’s page size and alignment. Read more
Source§fn has_native_fma(&self) -> bool
fn has_native_fma(&self) -> bool
Returns whether this ISA has a native fused-multiply-and-add instruction
for floats. Read more
Source§fn has_x86_blendv_lowering(&self, _: Type) -> bool
fn has_x86_blendv_lowering(&self, _: Type) -> bool
Returns whether the CLIF
x86_blendv
instruction is implemented for
this ISA for the specified type.Source§fn has_x86_pshufb_lowering(&self) -> bool
fn has_x86_pshufb_lowering(&self) -> bool
Returns whether the CLIF
x86_pshufb
instruction is implemented for
this ISA.Source§fn has_x86_pmulhrsw_lowering(&self) -> bool
fn has_x86_pmulhrsw_lowering(&self) -> bool
Returns whether the CLIF
x86_pmulhrsw
instruction is implemented for
this ISA.Source§fn has_x86_pmaddubsw_lowering(&self) -> bool
fn has_x86_pmaddubsw_lowering(&self) -> bool
Returns whether the CLIF
x86_pmaddubsw
instruction is implemented for
this ISA.Source§fn wrapped(self) -> OwnedTargetIsawhere
Self: Sized + 'static,
fn wrapped(self) -> OwnedTargetIsawhere
Self: Sized + 'static,
Create a polymorphic TargetIsa from this specific implementation.
Auto Trait Implementations§
impl Freeze for AArch64Backend
impl RefUnwindSafe for AArch64Backend
impl Send for AArch64Backend
impl Sync for AArch64Backend
impl Unpin for AArch64Backend
impl UnwindSafe for AArch64Backend
Blanket Implementations§
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