Skip to content

Commit 3c455fe

Browse files
committed
MIR: use span instead of NodeId to determine if optimized_mir should be run
1 parent 28742a1 commit 3c455fe

File tree

1 file changed

+5
-7
lines changed

1 file changed

+5
-7
lines changed

src/librustc_mir/transform/inline.rs

+5-7
Original file line numberDiff line numberDiff line change
@@ -94,17 +94,15 @@ impl Inliner<'tcx> {
9494
continue;
9595
}
9696

97-
let self_node_id = self.tcx.hir().as_local_node_id(self.source.def_id()).unwrap();
98-
let callee_node_id = self.tcx.hir().as_local_node_id(callsite.callee);
97+
let callee_hir_id = self.tcx.hir().as_local_hir_id(callsite.callee);
9998

100-
let callee_body = if let Some(callee_node_id) = callee_node_id {
99+
let callee_body = if let Some(callee_hir_id) = callee_hir_id {
100+
let self_hir_id = self.tcx.hir().as_local_hir_id(self.source.def_id()).unwrap();
101101
// Avoid a cycle here by only using `optimized_mir` only if we have
102-
// a lower node id than the callee. This ensures that the callee will
102+
// a lower `HirId` than the callee. This ensures that the callee will
103103
// not inline us. This trick only works without incremental compilation.
104104
// So don't do it if that is enabled.
105-
if !self.tcx.dep_graph.is_fully_enabled()
106-
&& self_node_id.as_u32() < callee_node_id.as_u32()
107-
{
105+
if !self.tcx.dep_graph.is_fully_enabled() && self_hir_id < callee_hir_id {
108106
self.tcx.optimized_mir(callsite.callee)
109107
} else {
110108
continue;

0 commit comments

Comments
 (0)