@@ -4204,8 +4204,12 @@ class RegisterNMethodOopClosure: public OopClosure {
4204
4204
G1CollectedHeap* _g1h;
4205
4205
nmethod* _nm;
4206
4206
4207
- template <class T > void do_oop_work (T* p) {
4208
- T heap_oop = RawAccess<>::oop_load (p);
4207
+ public:
4208
+ RegisterNMethodOopClosure (G1CollectedHeap* g1h, nmethod* nm) :
4209
+ _g1h (g1h), _nm(nm) {}
4210
+
4211
+ void do_oop (oop* p) {
4212
+ oop heap_oop = RawAccess<>::oop_load (p);
4209
4213
if (!CompressedOops::is_null (heap_oop)) {
4210
4214
oop obj = CompressedOops::decode_not_null (heap_oop);
4211
4215
HeapRegion* hr = _g1h->heap_region_containing (obj);
@@ -4219,20 +4223,19 @@ class RegisterNMethodOopClosure: public OopClosure {
4219
4223
}
4220
4224
}
4221
4225
4222
- public:
4223
- RegisterNMethodOopClosure (G1CollectedHeap* g1h, nmethod* nm) :
4224
- _g1h (g1h), _nm(nm) {}
4225
-
4226
- void do_oop (oop* p) { do_oop_work (p); }
4227
- void do_oop (narrowOop* p) { do_oop_work (p); }
4226
+ void do_oop (narrowOop* p) { ShouldNotReachHere (); }
4228
4227
};
4229
4228
4230
4229
class UnregisterNMethodOopClosure : public OopClosure {
4231
4230
G1CollectedHeap* _g1h;
4232
4231
nmethod* _nm;
4233
4232
4234
- template <class T > void do_oop_work (T* p) {
4235
- T heap_oop = RawAccess<>::oop_load (p);
4233
+ public:
4234
+ UnregisterNMethodOopClosure (G1CollectedHeap* g1h, nmethod* nm) :
4235
+ _g1h (g1h), _nm(nm) {}
4236
+
4237
+ void do_oop (oop* p) {
4238
+ oop heap_oop = RawAccess<>::oop_load (p);
4236
4239
if (!CompressedOops::is_null (heap_oop)) {
4237
4240
oop obj = CompressedOops::decode_not_null (heap_oop);
4238
4241
HeapRegion* hr = _g1h->heap_region_containing (obj);
@@ -4245,12 +4248,7 @@ class UnregisterNMethodOopClosure: public OopClosure {
4245
4248
}
4246
4249
}
4247
4250
4248
- public:
4249
- UnregisterNMethodOopClosure (G1CollectedHeap* g1h, nmethod* nm) :
4250
- _g1h (g1h), _nm(nm) {}
4251
-
4252
- void do_oop (oop* p) { do_oop_work (p); }
4253
- void do_oop (narrowOop* p) { do_oop_work (p); }
4251
+ void do_oop (narrowOop* p) { ShouldNotReachHere (); }
4254
4252
};
4255
4253
4256
4254
void G1CollectedHeap::register_nmethod (nmethod* nm) {
0 commit comments