Struct rustc_codegen_ssa::back::write::OngoingCodegen [−][src]
pub struct OngoingCodegen<B: ExtraBackendMethods> {
pub backend: B,
pub metadata: EncodedMetadata,
pub crate_info: CrateInfo,
pub coordinator_send: Sender<Box<dyn Any + Send>>,
pub codegen_worker_receive: Receiver<Message<B>>,
pub shared_emitter_main: SharedEmitterMain,
pub future: JoinHandle<Result<CompiledModules, ()>>,
pub output_filenames: Arc<OutputFilenames>,
}
Fields
backend: B
metadata: EncodedMetadata
crate_info: CrateInfo
coordinator_send: Sender<Box<dyn Any + Send>>
codegen_worker_receive: Receiver<Message<B>>
future: JoinHandle<Result<CompiledModules, ()>>
output_filenames: Arc<OutputFilenames>
Implementations
pub fn submit_pre_codegened_module_to_llvm(
&self,
tcx: TyCtxt<'_>,
module: ModuleCodegen<B::Module>
)
Consumes this context indicating that codegen was entirely aborted, and we need to exit as quickly as possible.
This method blocks the current thread until all worker threads have finished, and all worker threads should have exited or be real close to exiting at this point.
Auto Trait Implementations
impl<B> !RefUnwindSafe for OngoingCodegen<B>
impl<B> !Send for OngoingCodegen<B>
impl<B> !Sync for OngoingCodegen<B>
impl<B> Unpin for OngoingCodegen<B> where
B: Unpin,
impl<B> !UnwindSafe for OngoingCodegen<B>
Blanket Implementations
Layout
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.