Struct IsaBuilder
pub struct IsaBuilder<T> { /* private fields */ }
Expand description
Builder for a TargetIsa
.
Modify the ISA-specific settings before creating the TargetIsa
trait object with finish
.
Implementations§
§impl<T> IsaBuilder<T>
impl<T> IsaBuilder<T>
pub fn new(
triple: Triple,
setup: Builder,
constructor: fn(_: Triple, _: Flags, _: &Builder) -> T,
) -> IsaBuilder<T>
pub fn new( triple: Triple, setup: Builder, constructor: fn(_: Triple, _: Flags, _: &Builder) -> T, ) -> IsaBuilder<T>
Creates a new ISA-builder from its components, namely the triple
for
the ISA, the ISA-specific settings builder, and a final constructor
function to generate the ISA from its components.
pub fn from_target_isa(
target_isa: &dyn TargetIsa,
) -> IsaBuilder<Result<Arc<dyn TargetIsa>, CodegenError>>
pub fn from_target_isa( target_isa: &dyn TargetIsa, ) -> IsaBuilder<Result<Arc<dyn TargetIsa>, CodegenError>>
pub fn triple(&self) -> &Triple
pub fn triple(&self) -> &Triple
Gets the triple for the builder.
pub fn finish(&self, shared_flags: Flags) -> T
pub fn finish(&self, shared_flags: Flags) -> T
Combine the ISA-specific settings with the provided
ISA-independent settings and allocate a fully configured
TargetIsa
trait object. May return an error if some of the
flags are inconsistent or incompatible: for example, some
platform-independent features, like general SIMD support, may
need certain ISA extensions to be enabled.
Trait Implementations§
§impl<T> Clone for IsaBuilder<T>where
T: Clone,
impl<T> Clone for IsaBuilder<T>where
T: Clone,
§fn clone(&self) -> IsaBuilder<T>
fn clone(&self) -> IsaBuilder<T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreAuto Trait Implementations§
impl<T> Freeze for IsaBuilder<T>
impl<T> RefUnwindSafe for IsaBuilder<T>
impl<T> Send for IsaBuilder<T>
impl<T> Sync for IsaBuilder<T>
impl<T> Unpin for IsaBuilder<T>
impl<T> UnwindSafe for IsaBuilder<T>
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)