@@ -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