Mercurial > hg > truffle
diff src/share/vm/gc_implementation/g1/g1OopClosures.hpp @ 3765:ae5b2f1dcf12
7045662: G1: OopsInHeapRegionClosure::set_region() should not be virtual
Summary: make the method non-virtual, remove five unused closures, and fix a couple of copyright typos.
Reviewed-by: stefank, johnc, poonam
author | tonyp |
---|---|
date | Wed, 08 Jun 2011 21:48:38 -0400 |
parents | f95d63e2154a |
children | 842b840e67db |
line wrap: on
line diff
--- a/src/share/vm/gc_implementation/g1/g1OopClosures.hpp Wed Jun 08 15:31:51 2011 -0400 +++ b/src/share/vm/gc_implementation/g1/g1OopClosures.hpp Wed Jun 08 21:48:38 2011 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2001, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -40,7 +40,7 @@ protected: HeapRegion* _from; public: - virtual void set_region(HeapRegion* from) { _from = from; } + void set_region(HeapRegion* from) { _from = from; } }; class G1ParClosureSuper : public OopsInHeapRegionClosure { @@ -161,44 +161,6 @@ bool do_header() { return false; } }; -class FilterInHeapRegionAndIntoCSClosure : public OopsInHeapRegionClosure { - G1CollectedHeap* _g1; - OopsInHeapRegionClosure* _oc; -public: - FilterInHeapRegionAndIntoCSClosure(G1CollectedHeap* g1, - OopsInHeapRegionClosure* oc) : - _g1(g1), _oc(oc) - {} - template <class T> void do_oop_nv(T* p); - virtual void do_oop(oop* p) { do_oop_nv(p); } - virtual void do_oop(narrowOop* p) { do_oop_nv(p); } - bool apply_to_weak_ref_discovered_field() { return true; } - bool do_header() { return false; } - void set_region(HeapRegion* from) { - _oc->set_region(from); - } -}; - -class FilterAndMarkInHeapRegionAndIntoCSClosure : public OopsInHeapRegionClosure { - G1CollectedHeap* _g1; - ConcurrentMark* _cm; - OopsInHeapRegionClosure* _oc; -public: - FilterAndMarkInHeapRegionAndIntoCSClosure(G1CollectedHeap* g1, - OopsInHeapRegionClosure* oc, - ConcurrentMark* cm) - : _g1(g1), _oc(oc), _cm(cm) { } - - template <class T> void do_oop_nv(T* p); - virtual void do_oop(oop* p) { do_oop_nv(p); } - virtual void do_oop(narrowOop* p) { do_oop_nv(p); } - bool apply_to_weak_ref_discovered_field() { return true; } - bool do_header() { return false; } - void set_region(HeapRegion* from) { - _oc->set_region(from); - } -}; - class FilterOutOfRegionClosure: public OopClosure { HeapWord* _r_bottom; HeapWord* _r_end;