8144486: Change G1UpdateRSOrPushRefOopClosure to inherit OopClosure

Reviewed-by: mgerdin, stefank
This commit is contained in:
Stefan Johansson 2015-12-11 09:08:08 +01:00
parent ffeb0bdad0
commit 97e8a96fe1
3 changed files with 6 additions and 10 deletions

View File

@ -242,7 +242,7 @@ public:
virtual void do_oop(narrowOop* p) { do_oop_nv(p); }
};
class G1UpdateRSOrPushRefOopClosure: public ExtendedOopClosure {
class G1UpdateRSOrPushRefOopClosure: public OopClosure {
G1CollectedHeap* _g1;
G1RemSet* _g1_rem_set;
HeapRegion* _from;
@ -268,11 +268,9 @@ public:
return result;
}
bool apply_to_weak_ref_discovered_field() { return true; }
template <class T> void do_oop_nv(T* p);
virtual void do_oop(narrowOop* p) { do_oop_nv(p); }
virtual void do_oop(oop* p) { do_oop_nv(p); }
template <class T> void do_oop_work(T* p);
virtual void do_oop(narrowOop* p) { do_oop_work(p); }
virtual void do_oop(oop* p) { do_oop_work(p); }
};
#endif // SHARE_VM_GC_G1_G1OOPCLOSURES_HPP

View File

@ -156,7 +156,7 @@ inline void G1InvokeIfNotTriggeredClosure::do_oop_nv(T* p) {
}
template <class T>
inline void G1UpdateRSOrPushRefOopClosure::do_oop_nv(T* p) {
inline void G1UpdateRSOrPushRefOopClosure::do_oop_work(T* p) {
oop obj = oopDesc::load_decode_heap_oop(p);
if (obj == NULL) {
return;

View File

@ -44,7 +44,6 @@ class G1RootRegionScanClosure;
class G1Mux2Closure;
class G1TriggerClosure;
class G1InvokeIfNotTriggeredClosure;
class G1UpdateRSOrPushRefOopClosure;
#define SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_G1(f) \
f(G1ParScanClosure,_nv) \
@ -55,7 +54,6 @@ class G1UpdateRSOrPushRefOopClosure;
f(G1RootRegionScanClosure,_nv) \
f(G1Mux2Closure,_nv) \
f(G1TriggerClosure,_nv) \
f(G1InvokeIfNotTriggeredClosure,_nv) \
f(G1UpdateRSOrPushRefOopClosure,_nv)
f(G1InvokeIfNotTriggeredClosure,_nv)
#endif // SHARE_VM_GC_G1_G1_SPECIALIZED_OOP_CLOSURES_HPP