Duplicate :
|
|
Relates :
|
|
Relates :
|
In G1 we have a few tables which have one entry for a fixed-sized subdivision of the heap. Examples of such tables are the HeapRegionSeq table as well as the "fast cset test" table which have one entry per region in the heap. Another example is the upcoming "segments" table. It'd be nice to have an abstraction for such tables to avoid duplicating a lot of the code. We'll call the abstraction the "heap spanning table" and it will provide facilities to allocate, index, resize, etc. such tables. It will also provide a "fast look-up" facility which will be based on a version of the table that's biased to address 0. As a first cut we'll also modify the HeapRegionSeq class to take advantage of the new abstraction.
|