pub trait ExtraBackendMethods: CodegenBackend + WriteBackendMethods + Sized + Send + Sync {
    fn new_metadata(&self, sess: TyCtxt<'_>, mod_name: &str) -> Self::Module;
fn codegen_allocator<'tcx>(
        &self,
        tcx: TyCtxt<'tcx>,
        module_llvm: &mut Self::Module,
        module_name: &str,
        kind: AllocatorKind,
        has_alloc_error_handler: bool
    );
fn compile_codegen_unit(
        &self,
        tcx: TyCtxt<'_>,
        cgu_name: Symbol
    ) -> (ModuleCodegen<Self::Module>, u64);
fn target_machine_factory(
        &self,
        sess: &Session,
        opt_level: OptLevel
    ) -> TargetMachineFactoryFn<Self>;
fn target_cpu<'b>(&self, sess: &'b Session) -> &'b str;
fn tune_cpu<'b>(&self, sess: &'b Session) -> Option<&'b str>; fn spawn_thread<F, T>(_time_trace: bool, f: F) -> JoinHandle<T>
    where
        F: FnOnce() -> T,
        F: Send + 'static,
        T: Send + 'static
, { ... }
fn spawn_named_thread<F, T>(
        _time_trace: bool,
        name: String,
        f: F
    ) -> Result<JoinHandle<T>>
    where
        F: FnOnce() -> T,
        F: Send + 'static,
        T: Send + 'static
, { ... } }

Required methods

This generates the codegen unit and returns it along with a u64 giving an estimate of the unit’s processing cost.

Provided methods

Implementors