aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoman Kennke <rkennke@openjdk.org>2019-03-27 22:25:03 +0100
committerRoman Kennke <rkennke@openjdk.org>2019-03-27 22:25:03 +0100
commit004b3ee748a266c6a4ccb773897a365263e2a5db (patch)
treef6e47ef39125f20327d35f4c85023f90cadf7d5a
parent518e3a878862fd7be2d9eea42f122fdaa01c7dd8 (diff)
downloadlibcore-004b3ee748a266c6a4ccb773897a365263e2a5db.tar.gz
8220664: Simplify ShenandoahUpdateHeapRefsClosurejdk21u/jdk-13+15jdk17u/jdk-13+15jdk/jdk-13+15
Reviewed-by: shade
-rw-r--r--src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp16
-rw-r--r--src/hotspot/share/gc/shenandoah/shenandoahOopClosures.inline.hpp2
2 files changed, 5 insertions, 13 deletions
diff --git a/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp b/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp
index bd649b2f2f0..95304cc33d9 100644
--- a/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp
+++ b/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.hpp
@@ -184,24 +184,16 @@ public:
virtual bool do_metadata() { return true; }
};
-class ShenandoahUpdateHeapRefsSuperClosure : public BasicOopIterateClosure {
+class ShenandoahUpdateHeapRefsClosure : public BasicOopIterateClosure {
private:
ShenandoahHeap* _heap;
-public:
- ShenandoahUpdateHeapRefsSuperClosure() :
- _heap(ShenandoahHeap::heap()) {}
-
- template <class T>
- void work(T *p);
-};
-class ShenandoahUpdateHeapRefsClosure : public ShenandoahUpdateHeapRefsSuperClosure {
-private:
template <class T>
- inline void do_oop_work(T* p) { work<T>(p); }
+ void do_oop_work(T* p);
public:
- ShenandoahUpdateHeapRefsClosure() : ShenandoahUpdateHeapRefsSuperClosure() {}
+ ShenandoahUpdateHeapRefsClosure() :
+ _heap(ShenandoahHeap::heap()) {}
virtual void do_oop(narrowOop* p) { do_oop_work(p); }
virtual void do_oop(oop* p) { do_oop_work(p); }
diff --git a/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.inline.hpp b/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.inline.hpp
index e827c86a229..23d5bc17a3b 100644
--- a/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.inline.hpp
+++ b/src/hotspot/share/gc/shenandoah/shenandoahOopClosures.inline.hpp
@@ -34,7 +34,7 @@ inline void ShenandoahMarkRefsSuperClosure::work(T *p) {
}
template <class T>
-inline void ShenandoahUpdateHeapRefsSuperClosure::work(T* p) {
+inline void ShenandoahUpdateHeapRefsClosure::do_oop_work(T* p) {
_heap->maybe_update_with_forwarded(p);
}