about summary refs log tree commit diff
path: root/compiler/rustc_codegen_ssa/src/base.rs
diff options
context:
space:
mode:
authorGary Guo <gary@garyguo.net>2022-04-02 22:54:51 +0100
committerGary Guo <gary@garyguo.net>2022-04-18 20:50:56 +0100
commit773f533eae25129cea7241b74e54f26ce5eebb62 (patch)
tree966b18c563ba92671a3f7e39d63e496bd43f63ec /compiler/rustc_codegen_ssa/src/base.rs
parenta1dae4bc9d708bfea8a8bb5996e96de5c5180f7f (diff)
downloadrust-773f533eae25129cea7241b74e54f26ce5eebb62.tar.gz
rust-773f533eae25129cea7241b74e54f26ce5eebb62.zip
Synthesis object file for `#[used]` and exported symbols
Diffstat (limited to 'compiler/rustc_codegen_ssa/src/base.rs')
-rw-r--r--compiler/rustc_codegen_ssa/src/base.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_ssa/src/base.rs b/compiler/rustc_codegen_ssa/src/base.rs
index 01056024805..5a1d0208842 100644
--- a/compiler/rustc_codegen_ssa/src/base.rs
+++ b/compiler/rustc_codegen_ssa/src/base.rs
@@ -801,6 +801,12 @@ impl CrateInfo {
             .iter()
             .map(|&c| (c, crate::back::linker::exported_symbols(tcx, c)))
             .collect();
+        let linked_symbols = tcx
+            .sess
+            .crate_types()
+            .iter()
+            .map(|&c| (c, crate::back::linker::linked_symbols(tcx, c)))
+            .collect();
         let local_crate_name = tcx.crate_name(LOCAL_CRATE);
         let crate_attrs = tcx.hir().attrs(rustc_hir::CRATE_HIR_ID);
         let subsystem = tcx.sess.first_attr_value_str_by_name(crate_attrs, sym::windows_subsystem);
@@ -834,6 +840,7 @@ impl CrateInfo {
         let mut info = CrateInfo {
             target_cpu,
             exported_symbols,
+            linked_symbols,
             local_crate_name,
             compiler_builtins: None,
             profiler_runtime: None,