Skip to content

Commit f04a2d3

Browse files
committed
Provide default MetadataLoader
1 parent 45c9775 commit f04a2d3

File tree

3 files changed

+9
-10
lines changed

3 files changed

+9
-10
lines changed

compiler/rustc_codegen_cranelift/src/lib.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ use rustc_codegen_ssa::traits::CodegenBackend;
2828
use rustc_codegen_ssa::CodegenResults;
2929
use rustc_errors::ErrorReported;
3030
use rustc_middle::dep_graph::{WorkProduct, WorkProductId};
31-
use rustc_middle::middle::cstore::{EncodedMetadata, MetadataLoader};
31+
use rustc_middle::middle::cstore::EncodedMetadata;
3232
use rustc_session::config::OutputFilenames;
3333
use rustc_session::Session;
3434

@@ -163,10 +163,6 @@ impl CodegenBackend for CraneliftCodegenBackend {
163163
}
164164
}
165165

166-
fn metadata_loader(&self) -> Box<dyn MetadataLoader + Sync> {
167-
Box::new(rustc_codegen_ssa::back::metadata::DefaultMetadataLoader)
168-
}
169-
170166
fn target_features(&self, _sess: &Session) -> Vec<rustc_span::Symbol> {
171167
vec![]
172168
}

compiler/rustc_codegen_llvm/src/lib.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -248,10 +248,6 @@ impl CodegenBackend for LlvmCodegenBackend {
248248
target_features(sess)
249249
}
250250

251-
fn metadata_loader(&self) -> Box<MetadataLoaderDyn> {
252-
Box::new(rustc_codegen_ssa::back::metadata::DefaultMetadataLoader)
253-
}
254-
255251
fn codegen_crate<'tcx>(
256252
&self,
257253
tcx: TyCtxt<'tcx>,

compiler/rustc_codegen_ssa/src/traits/backend.rs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,14 @@ pub trait CodegenBackend {
6363
None
6464
}
6565

66-
fn metadata_loader(&self) -> Box<MetadataLoaderDyn>;
66+
/// The metadata loader used to load rlib and dylib metadata.
67+
///
68+
/// Alternative codegen backends may want to use different rlib or dylib formats than the
69+
/// default native static archives and dynamic libraries.
70+
fn metadata_loader(&self) -> Box<MetadataLoaderDyn> {
71+
Box::new(crate::back::metadata::DefaultMetadataLoader)
72+
}
73+
6774
fn provide(&self, _providers: &mut Providers) {}
6875
fn provide_extern(&self, _providers: &mut Providers) {}
6976
fn codegen_crate<'tcx>(

0 commit comments

Comments
 (0)