RFR(M): 7163191: G1: introduce a "heap spanning table" abstraction

John Cuthbertson john.cuthbertson at oracle.com
Tue Feb 26 18:20:06 UTC 2013

Hi Everyone,

A new version of this that incorporates some feedback from Bengt and 
Thomas can be found at: http://cr.openjdk.java.net/~johnc/7163191/webrev.1/

Summary of Changes
* Removed the split between the templated base class. The routines that 
were in the .cpp have been moved into the .hpp.
* default value is now a virtual function that subclasses have to implement.
* The new .cpp has been removed.
* Minor cleanups suggested by Bengt.
* Minor cleanups suggested by Thomas Schatzl.

GC test suite.
I've also updated and tested the patch that converts the two fast 
in-cset arrays to be sub-classes of the spanning table. This will be 
sent out for review once this change is pushed.



On 2/14/2013 2:16 PM, John Cuthbertson wrote:
> Hi Everyone,
> Here's another change from Tony that I've been maintaining since he 
> left Oracle. Can I have a volunteer look over the changes? They look 
> good to me. The webrev can be found at: 
> http://cr.openjdk.java.net/~johnc/7163191/webrev.0/
> Summary:
> Currently in G1 there are several tables where a each element is used 
> to hold some information about a fixed size subdivision of the heap. 
> For example the HeapRegion table and the fast CSet test tables. This 
> change encapsulates the base properties of these tables in a generic 
> heap spanning table and uses the abstraction for the heap region 
> sequence table. A future change will extend this to the fast cset test 
> arrays.
> Testing consisted of the GC test suite with a low marking threshold 
> and heap verification. Testing did catch an assertion failure that I 
> have included a small fix for. As with the additional marking 
> validation changes, if no-one objects, I will push this change with 
> Tony as the author and myself as a reviewer.
> JohnC

More information about the hotspot-gc-dev mailing list