< prev index next >
src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2001, 2014, 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
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2001, 2015, 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
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 760,771 ****
// Apply the given closure to each block in the space.
void CompactibleFreeListSpace::blk_iterate_careful(BlkClosureCareful* cl) {
assert_lock_strong(freelistLock());
HeapWord *cur, *limit;
! for (cur = bottom(), limit = end(); cur < limit;
! cur += cl->do_blk_careful(cur));
}
// Apply the given closure to each block in the space.
void CompactibleFreeListSpace::blk_iterate(BlkClosure* cl) {
assert_lock_strong(freelistLock());
--- 760,774 ----
// Apply the given closure to each block in the space.
void CompactibleFreeListSpace::blk_iterate_careful(BlkClosureCareful* cl) {
assert_lock_strong(freelistLock());
HeapWord *cur, *limit;
! size_t res;
! for (cur = bottom(), limit = end(); cur < limit; cur += res) {
! res = cl->do_blk_careful(cur);
! assert(cur + res > cur, "Not monotonically increasing ?");
! }
}
// Apply the given closure to each block in the space.
void CompactibleFreeListSpace::blk_iterate(BlkClosure* cl) {
assert_lock_strong(freelistLock());
< prev index next >