Inline and remove item_requires_monomorphization.

It's very simple and has a single call site.
This commit is contained in:
Nicholas Nethercote 2023-10-18 14:26:19 +11:00
parent 42c8803fe8
commit 55c5ab9fbc

View File

@ -173,7 +173,7 @@
use rustc_middle::mir::interpret::{AllocId, ErrorHandled, GlobalAlloc, Scalar}; use rustc_middle::mir::interpret::{AllocId, ErrorHandled, GlobalAlloc, Scalar};
use rustc_middle::mir::mono::{InstantiationMode, MonoItem}; use rustc_middle::mir::mono::{InstantiationMode, MonoItem};
use rustc_middle::mir::visit::Visitor as MirVisitor; use rustc_middle::mir::visit::Visitor as MirVisitor;
use rustc_middle::mir::{self, Local, Location}; use rustc_middle::mir::{self, Location};
use rustc_middle::query::TyCtxtAt; use rustc_middle::query::TyCtxtAt;
use rustc_middle::ty::adjustment::{CustomCoerceUnsized, PointerCoercion}; use rustc_middle::ty::adjustment::{CustomCoerceUnsized, PointerCoercion};
use rustc_middle::ty::print::with_no_trimmed_paths; use rustc_middle::ty::print::with_no_trimmed_paths;
@ -1212,7 +1212,7 @@ fn process_impl_item(&mut self, id: hir::ImplItemId) {
} }
fn is_root(&self, def_id: LocalDefId) -> bool { fn is_root(&self, def_id: LocalDefId) -> bool {
!item_requires_monomorphization(self.tcx, def_id) !self.tcx.generics_of(def_id).requires_monomorphization(self.tcx)
&& match self.mode { && match self.mode {
MonoItemCollectionMode::Eager => true, MonoItemCollectionMode::Eager => true,
MonoItemCollectionMode::Lazy => { MonoItemCollectionMode::Lazy => {
@ -1275,11 +1275,6 @@ fn push_extra_entry_roots(&mut self) {
} }
} }
fn item_requires_monomorphization(tcx: TyCtxt<'_>, def_id: LocalDefId) -> bool {
let generics = tcx.generics_of(def_id);
generics.requires_monomorphization(tcx)
}
#[instrument(level = "debug", skip(tcx, output))] #[instrument(level = "debug", skip(tcx, output))]
fn create_mono_items_for_default_impls<'tcx>( fn create_mono_items_for_default_impls<'tcx>(
tcx: TyCtxt<'tcx>, tcx: TyCtxt<'tcx>,