diff options
| author | bors <bors@rust-lang.org> | 2024-08-03 23:45:22 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-08-03 23:45:22 +0000 |
| commit | 8f63e9f8732d8688f2b5e1c816569f65ee185c7e (patch) | |
| tree | 54c939a2eb4491f5461ac0960dc211bd907a0502 /compiler/rustc_middle | |
| parent | 64ebd39da5ec28caa3bd7cbb3f22f5949432fe2b (diff) | |
| parent | 9b097b2d44a8f953640ba42122a804485d651ea9 (diff) | |
| download | rust-8f63e9f8732d8688f2b5e1c816569f65ee185c7e.tar.gz rust-8f63e9f8732d8688f2b5e1c816569f65ee185c7e.zip | |
Auto merge of #128441 - Bryanskiy:delegation-perf, r=petrochenkov
Delegation: second attempt to improve perf Possible perf fix for https://github.com/rust-lang/rust/pull/125929 r? `@petrochenkov`
Diffstat (limited to 'compiler/rustc_middle')
| -rw-r--r-- | compiler/rustc_middle/src/hir/map/mod.rs | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/compiler/rustc_middle/src/hir/map/mod.rs b/compiler/rustc_middle/src/hir/map/mod.rs index 1705c016437..4c243e6330b 100644 --- a/compiler/rustc_middle/src/hir/map/mod.rs +++ b/compiler/rustc_middle/src/hir/map/mod.rs @@ -747,18 +747,7 @@ impl<'hir> Map<'hir> { } pub fn opt_delegation_sig_id(self, def_id: LocalDefId) -> Option<DefId> { - if let Some(ret) = self.get_fn_output(def_id) - && let FnRetTy::Return(ty) = ret - && let TyKind::InferDelegation(sig_id, _) = ty.kind - { - return Some(sig_id); - } - None - } - - #[inline] - pub fn delegation_sig_id(self, def_id: LocalDefId) -> DefId { - self.opt_delegation_sig_id(def_id).unwrap() + self.tcx.opt_hir_owner_node(def_id)?.fn_decl()?.opt_delegation_sig_id() } #[inline] |
