Struct cretonne_faerie::FaerieBuilder [−][src]
pub struct FaerieBuilder { /* fields omitted */ }
A builder for FaerieBackend
.
Methods
impl FaerieBuilder
[src]
impl FaerieBuilder
pub fn new(
isa: Box<TargetIsa>,
name: String,
collect_traps: FaerieTrapCollection,
libcall_names: Box<Fn(LibCall) -> String>
) -> ModuleResult<Self>
[src]
pub fn new(
isa: Box<TargetIsa>,
name: String,
collect_traps: FaerieTrapCollection,
libcall_names: Box<Fn(LibCall) -> String>
) -> ModuleResult<Self>
Create a new FaerieBuilder
using the given Cretonne target, that
can be passed to
[Module::new
](cretonne_module/struct.Module.html#method.new].
Faerie output requires that TargetIsa have PIC (Position Independent Code) enabled.
collect_traps
setting determines whether trap information is collected in a
FaerieTrapManifest
available in the FaerieProduct
.
The libcall_names
function provides a way to translate cretonne_codegen
's ir::LibCall
enum to symbols. LibCalls are inserted in the IR as part of the legalization for certain
floating point instructions, and for stack probes. If you don't know what to use for this
argument, use FaerieBuilder::default_libcall_names()
.
pub fn default_libcall_names() -> Box<Fn(LibCall) -> String>
[src]
pub fn default_libcall_names() -> Box<Fn(LibCall) -> String>
Default names for ir::LibCall
s. A function by this name is imported into the object as
part of the translation of a ir::ExternalName::LibCall
variant. Calls to a LibCall should
only be inserted into the IR by the cretonne_codegen
legalizer pass.
Auto Trait Implementations
impl !Send for FaerieBuilder
impl !Send for FaerieBuilder
impl !Sync for FaerieBuilder
impl !Sync for FaerieBuilder