1.1 --- a/src/share/vm/gc_implementation/g1/concurrentMark.hpp Mon Apr 19 05:40:21 2010 -0700 1.2 +++ b/src/share/vm/gc_implementation/g1/concurrentMark.hpp Thu Apr 22 10:02:38 2010 -0700 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright 2001-2009 Sun Microsystems, Inc. All Rights Reserved. 1.6 + * Copyright 2001-2010 Sun Microsystems, Inc. All Rights Reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -733,6 +733,19 @@ 1.11 // to determine whether any heap regions are located above the finger. 1.12 void registerCSetRegion(HeapRegion* hr); 1.13 1.14 + // Registers the maximum region-end associated with a set of 1.15 + // regions with CM. Again this is used to determine whether any 1.16 + // heap regions are located above the finger. 1.17 + void register_collection_set_finger(HeapWord* max_finger) { 1.18 + // max_finger is the highest heap region end of the regions currently 1.19 + // contained in the collection set. If this value is larger than 1.20 + // _min_finger then we need to gray objects. 1.21 + // This routine is like registerCSetRegion but for an entire 1.22 + // collection of regions. 1.23 + if (max_finger > _min_finger) 1.24 + _should_gray_objects = true; 1.25 + } 1.26 + 1.27 // Returns "true" if at least one mark has been completed. 1.28 bool at_least_one_mark_complete() { return _at_least_one_mark_complete; } 1.29