< prev index next >
src/share/vm/gc/g1/g1ConcurrentMark.cpp
Print this page
*** 2406,2420 ****
G1TaskQueueEntry buffer[G1CMMarkStack::EntriesPerChunk];
size_t n = 0;
G1TaskQueueEntry task_entry;
while (n < G1CMMarkStack::EntriesPerChunk && _task_queue->pop_local(task_entry)) {
! buffer[n] = task_entry;
++n;
}
if (n < G1CMMarkStack::EntriesPerChunk) {
! buffer[n] = G1TaskQueueEntry();
}
if (n > 0) {
if (!_cm->mark_stack_push(buffer)) {
set_has_aborted();
--- 2406,2420 ----
G1TaskQueueEntry buffer[G1CMMarkStack::EntriesPerChunk];
size_t n = 0;
G1TaskQueueEntry task_entry;
while (n < G1CMMarkStack::EntriesPerChunk && _task_queue->pop_local(task_entry)) {
! buffer[n].assign(task_entry);
++n;
}
if (n < G1CMMarkStack::EntriesPerChunk) {
! buffer[n].assign(G1TaskQueueEntry());
}
if (n > 0) {
if (!_cm->mark_stack_push(buffer)) {
set_has_aborted();
< prev index next >