Mercurial > hg > truffle
comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp @ 1245:6484c4ee11cb
6904516: More object array barrier fixes, following up on 6906727
Summary: Fixed missing pre-barrier calls for G1, modified C1 to call pre- and correct post-barrier interfaces, deleted obsolete interface, (temporarily) disabled redundant deferred barrier in BacktraceBuilder.
Reviewed-by: coleenp, jmasa, kvn, never
author | ysr |
---|---|
date | Mon, 01 Feb 2010 17:29:01 -0800 |
parents | 7b0e9cba0307 |
children | 0414c1049f15 |
comparison
equal
deleted
inserted
replaced
1244:745c853ee57f | 1245:6484c4ee11cb |
---|---|
2503 "not a garbage-first heap"); | 2503 "not a garbage-first heap"); |
2504 return _g1h; | 2504 return _g1h; |
2505 } | 2505 } |
2506 | 2506 |
2507 void G1CollectedHeap::gc_prologue(bool full /* Ignored */) { | 2507 void G1CollectedHeap::gc_prologue(bool full /* Ignored */) { |
2508 // always_do_update_barrier = false; | |
2508 assert(InlineCacheBuffer::is_empty(), "should have cleaned up ICBuffer"); | 2509 assert(InlineCacheBuffer::is_empty(), "should have cleaned up ICBuffer"); |
2509 // Call allocation profiler | 2510 // Call allocation profiler |
2510 AllocationProfiler::iterate_since_last_gc(); | 2511 AllocationProfiler::iterate_since_last_gc(); |
2511 // Fill TLAB's and such | 2512 // Fill TLAB's and such |
2512 ensure_parsability(true); | 2513 ensure_parsability(true); |
2516 // FIXME: what is this about? | 2517 // FIXME: what is this about? |
2517 // I'm ignoring the "fill_newgen()" call if "alloc_event_enabled" | 2518 // I'm ignoring the "fill_newgen()" call if "alloc_event_enabled" |
2518 // is set. | 2519 // is set. |
2519 COMPILER2_PRESENT(assert(DerivedPointerTable::is_empty(), | 2520 COMPILER2_PRESENT(assert(DerivedPointerTable::is_empty(), |
2520 "derived pointer present")); | 2521 "derived pointer present")); |
2522 // always_do_update_barrier = true; | |
2521 } | 2523 } |
2522 | 2524 |
2523 void G1CollectedHeap::do_collection_pause() { | 2525 void G1CollectedHeap::do_collection_pause() { |
2524 // Read the GC count while holding the Heap_lock | 2526 // Read the GC count while holding the Heap_lock |
2525 // we need to do this _before_ wait_for_cleanup_complete(), to | 2527 // we need to do this _before_ wait_for_cleanup_complete(), to |