@@ -490,21 +490,25 @@ impl<'mir, 'tcx> Machine<'mir, 'tcx> for Evaluator<'tcx> {
490
490
}
491
491
492
492
#[ inline( always) ]
493
- fn stack_push ( ecx : & mut InterpCx < ' mir , ' tcx , Self > ) -> InterpResult < ' tcx , FrameData < ' tcx > > {
493
+ fn init_frame_extra (
494
+ ecx : & mut InterpCx < ' mir , ' tcx , Self > ,
495
+ frame : Frame < ' mir , ' tcx , Tag > ,
496
+ ) -> InterpResult < ' tcx , Frame < ' mir , ' tcx , Tag , FrameData < ' tcx > > > {
494
497
let stacked_borrows = ecx. memory . extra . stacked_borrows . as_ref ( ) ;
495
498
let call_id = stacked_borrows. map_or ( NonZeroU64 :: new ( 1 ) . unwrap ( ) , |stacked_borrows| {
496
499
stacked_borrows. borrow_mut ( ) . new_call ( )
497
500
} ) ;
498
- Ok ( FrameData { call_id, catch_unwind : None } )
501
+ let extra = FrameData { call_id, catch_unwind : None } ;
502
+ Ok ( frame. with_extra ( extra) )
499
503
}
500
504
501
505
#[ inline( always) ]
502
- fn stack_pop (
506
+ fn after_stack_pop (
503
507
ecx : & mut InterpCx < ' mir , ' tcx , Self > ,
504
- extra : FrameData < ' tcx > ,
508
+ frame : Frame < ' mir , ' tcx , Tag , FrameData < ' tcx > > ,
505
509
unwinding : bool ,
506
510
) -> InterpResult < ' tcx , StackPopJump > {
507
- ecx. handle_stack_pop ( extra, unwinding)
511
+ ecx. handle_stack_pop ( frame . extra , unwinding)
508
512
}
509
513
510
514
#[ inline( always) ]
0 commit comments