File tree Expand file tree Collapse file tree 1 file changed +3
-1
lines changed Expand file tree Collapse file tree 1 file changed +3
-1
lines changed Original file line number Diff line number Diff line change @@ -187,9 +187,9 @@ impl LiveAllocs<'_, '_> {
187
187
impl < ' tcx > EvalContextExt < ' tcx > for crate :: MiriInterpCx < ' tcx > { }
188
188
pub trait EvalContextExt < ' tcx > : MiriInterpCxExt < ' tcx > {
189
189
fn run_provenance_gc ( & mut self ) {
190
- // We collect all tags from various parts of the interpreter, but also
191
190
let this = self . eval_context_mut ( ) ;
192
191
192
+ // We collect all tags and AllocId from every part of the interpreter.
193
193
let mut tags = FxHashSet :: default ( ) ;
194
194
let mut alloc_ids = FxHashSet :: default ( ) ;
195
195
this. visit_provenance ( & mut |id, tag| {
@@ -200,6 +200,8 @@ pub trait EvalContextExt<'tcx>: MiriInterpCxExt<'tcx> {
200
200
tags. insert ( tag) ;
201
201
}
202
202
} ) ;
203
+
204
+ // Based on this, clean up the interpreter state.
203
205
self . remove_unreachable_tags ( tags) ;
204
206
self . remove_unreachable_allocs ( alloc_ids) ;
205
207
}
You can’t perform that action at this time.
0 commit comments