@@ -54,8 +54,8 @@ fn reachable_non_generics_provider(tcx: TyCtxt<'_>, _: LocalCrate) -> DefIdMap<S
5454 // export level, however, as they're just implementation details.
5555 // Down below we'll hardwire all of the symbols to the `Rust` export
5656 // level instead.
57- let is_compiler_builtins = tcx . is_compiler_builtins ( LOCAL_CRATE ) ;
58- let special_runtime_crate = tcx. is_panic_runtime ( LOCAL_CRATE ) || is_compiler_builtins;
57+ let special_runtime_crate =
58+ tcx. is_panic_runtime ( LOCAL_CRATE ) || tcx . is_compiler_builtins ( LOCAL_CRATE ) ;
5959
6060 let mut reachable_non_generics: DefIdMap < _ > = tcx
6161 . reachable_set ( ( ) )
@@ -105,21 +105,16 @@ fn reachable_non_generics_provider(tcx: TyCtxt<'_>, _: LocalCrate) -> DefIdMap<S
105105 }
106106 } )
107107 . map ( |def_id| {
108- let codegen_attrs = tcx. codegen_fn_attrs ( def_id. to_def_id ( ) ) ;
109108 // We won't link right if this symbol is stripped during LTO.
110109 let name = tcx. symbol_name ( Instance :: mono ( tcx, def_id. to_def_id ( ) ) ) . name ;
111- // We have to preserve the symbols of the built-in functions during LTO.
112- let is_builtin_fn = is_compiler_builtins
113- && symbol_export_level ( tcx, def_id. to_def_id ( ) )
114- . is_below_threshold ( SymbolExportLevel :: C )
115- && codegen_attrs. flags . contains ( CodegenFnAttrFlags :: NO_MANGLE ) ;
116110 let used = name == "rust_eh_personality" ;
117111
118112 let export_level = if special_runtime_crate {
119113 SymbolExportLevel :: Rust
120114 } else {
121115 symbol_export_level ( tcx, def_id. to_def_id ( ) )
122116 } ;
117+ let codegen_attrs = tcx. codegen_fn_attrs ( def_id. to_def_id ( ) ) ;
123118 debug ! (
124119 "EXPORTED SYMBOL (local): {} ({:?})" ,
125120 tcx. symbol_name( Instance :: mono( tcx, def_id. to_def_id( ) ) ) ,
@@ -139,7 +134,6 @@ fn reachable_non_generics_provider(tcx: TyCtxt<'_>, _: LocalCrate) -> DefIdMap<S
139134 used : codegen_attrs. flags . contains ( CodegenFnAttrFlags :: USED )
140135 || codegen_attrs. flags . contains ( CodegenFnAttrFlags :: USED_LINKER )
141136 || used,
142- used_compiler : is_builtin_fn,
143137 } ;
144138 ( def_id. to_def_id ( ) , info)
145139 } )
@@ -152,7 +146,6 @@ fn reachable_non_generics_provider(tcx: TyCtxt<'_>, _: LocalCrate) -> DefIdMap<S
152146 level : SymbolExportLevel :: C ,
153147 kind : SymbolExportKind :: Data ,
154148 used : false ,
155- used_compiler : false ,
156149 } ,
157150 ) ;
158151 }
@@ -201,7 +194,6 @@ fn exported_symbols_provider_local(
201194 level : info. level ,
202195 kind : SymbolExportKind :: Text ,
203196 used : info. used ,
204- used_compiler : false ,
205197 } ,
206198 )
207199 } )
@@ -218,7 +210,6 @@ fn exported_symbols_provider_local(
218210 level : SymbolExportLevel :: C ,
219211 kind : SymbolExportKind :: Text ,
220212 used : false ,
221- used_compiler : false ,
222213 } ,
223214 ) ) ;
224215 }
@@ -238,7 +229,6 @@ fn exported_symbols_provider_local(
238229 level : SymbolExportLevel :: Rust ,
239230 kind : SymbolExportKind :: Text ,
240231 used : false ,
241- used_compiler : false ,
242232 } ,
243233 ) ) ;
244234 }
@@ -251,7 +241,6 @@ fn exported_symbols_provider_local(
251241 level : SymbolExportLevel :: Rust ,
252242 kind : SymbolExportKind :: Data ,
253243 used : false ,
254- used_compiler : false ,
255244 } ,
256245 ) )
257246 }
@@ -271,7 +260,6 @@ fn exported_symbols_provider_local(
271260 level : SymbolExportLevel :: C ,
272261 kind : SymbolExportKind :: Data ,
273262 used : false ,
274- used_compiler : false ,
275263 } ,
276264 )
277265 } ) ) ;
@@ -297,7 +285,6 @@ fn exported_symbols_provider_local(
297285 level : SymbolExportLevel :: C ,
298286 kind : SymbolExportKind :: Data ,
299287 used : false ,
300- used_compiler : false ,
301288 } ,
302289 )
303290 } ) ) ;
@@ -315,7 +302,6 @@ fn exported_symbols_provider_local(
315302 level : SymbolExportLevel :: C ,
316303 kind : SymbolExportKind :: Data ,
317304 used : true ,
318- used_compiler : false ,
319305 } ,
320306 ) ) ;
321307 }
@@ -356,7 +342,6 @@ fn exported_symbols_provider_local(
356342 level : SymbolExportLevel :: Rust ,
357343 kind : SymbolExportKind :: Text ,
358344 used : false ,
359- used_compiler : false ,
360345 } ,
361346 ) ) ;
362347 }
@@ -373,7 +358,6 @@ fn exported_symbols_provider_local(
373358 level : SymbolExportLevel :: Rust ,
374359 kind : SymbolExportKind :: Text ,
375360 used : false ,
376- used_compiler : false ,
377361 } ,
378362 ) ) ;
379363 }
0 commit comments