@@ -4,7 +4,7 @@ use std::sync::Mutex;
4
4
5
5
use libc:: c_void;
6
6
use mmtk:: util:: ObjectReference ;
7
- use mmtk:: { memory_manager , MMTK } ;
7
+ use mmtk:: MMTK ;
8
8
9
9
use crate :: abi;
10
10
use crate :: abi:: RubyBindingOptions ;
@@ -35,7 +35,6 @@ pub struct RubyBinding {
35
35
pub plan_name : Mutex < Option < CString > > ,
36
36
pub weak_proc : WeakProcessor ,
37
37
pub ppp_registry : PPPRegistry ,
38
- pub ( crate ) pinned_roots : Mutex < Vec < ObjectReference > > ,
39
38
pub ( crate ) moved_givtbl : Mutex < HashMap < ObjectReference , MovedGIVTblEntry > > ,
40
39
}
41
40
@@ -58,7 +57,6 @@ impl RubyBinding {
58
57
plan_name : Mutex :: new ( None ) ,
59
58
weak_proc : WeakProcessor :: new ( ) ,
60
59
ppp_registry : PPPRegistry :: new ( ) ,
61
- pinned_roots : Default :: default ( ) ,
62
60
moved_givtbl : Default :: default ( ) ,
63
61
}
64
62
}
@@ -77,16 +75,4 @@ impl RubyBinding {
77
75
}
78
76
plan_name. as_deref ( ) . unwrap ( ) . as_ptr ( )
79
77
}
80
-
81
- pub ( crate ) fn unpin_pinned_roots ( & self ) {
82
- let mut pinned_roots = self
83
- . pinned_roots
84
- . try_lock ( )
85
- . expect ( "It is accessed during weak ref processing. Should have no race." ) ;
86
-
87
- for object in pinned_roots. drain ( ..) {
88
- let result = memory_manager:: unpin_object :: < Ruby > ( object) ;
89
- debug_assert ! ( result) ;
90
- }
91
- }
92
78
}
0 commit comments