Fri, 01 Jul 2011 10:37:37 -0700 7057120: Tiered: Allow C1 to inline methods with loops
iveresov [Fri, 01 Jul 2011 10:37:37 -0700] rev 10014
7057120: Tiered: Allow C1 to inline methods with loops Summary: Recompile the enclosing methods without inlining of the method that has OSRed to level 4 or recompile the enclosing method at level 4. Reviewed-by: kvn, never
Fri, 01 Jul 2011 10:35:54 -0700 7058689: Tiered: Reprofiling doesn't happen in presence of level 4 OSR methods
iveresov [Fri, 01 Jul 2011 10:35:54 -0700] rev 10013
7058689: Tiered: Reprofiling doesn't happen in presence of level 4 OSR methods Summary: Take into account current state of profiling before believing that existing higher level versions are valid Reviewed-by: kvn, never
Tue, 28 Jun 2011 15:50:07 -0700 7047954: VM crashes with assert(is_Mem()) failed
kvn [Tue, 28 Jun 2011 15:50:07 -0700] rev 10012
7047954: VM crashes with assert(is_Mem()) failed Summary: cast constant array ptrs to bottom Reviewed-by: never
Tue, 28 Jun 2011 15:24:29 -0700 7044738: Loop unroll optimization causes incorrect result
kvn [Tue, 28 Jun 2011 15:24:29 -0700] rev 10011
7044738: Loop unroll optimization causes incorrect result Summary: take into account memory dependencies when clonning nodes in clone_up_backedge_goo(). Reviewed-by: never
Tue, 28 Jun 2011 15:04:39 -0700 6990015: Incorrect Icache line size is used for 64 bit x86
kvn [Tue, 28 Jun 2011 15:04:39 -0700] rev 10010
6990015: Incorrect Icache line size is used for 64 bit x86 Summary: correct Icache::line_size for x64 and add verification code into vm_version_x86. Reviewed-by: never, phh
Tue, 28 Jun 2011 14:30:27 -0700 7058036: FieldsAllocationStyle=2 does not work in 32-bit VM
kvn [Tue, 28 Jun 2011 14:30:27 -0700] rev 10009
7058036: FieldsAllocationStyle=2 does not work in 32-bit VM Summary: parseClassFile() incorrectly uses nonstatic_oop_map_size() method instead of nonstatic_oop_map_count(). Reviewed-by: never Contributed-by: Krystal Mok <rednaxelafx@gmail.com>
Thu, 23 Jun 2011 17:14:06 -0700 7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path
jrose [Thu, 23 Jun 2011 17:14:06 -0700] rev 10008
7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path Reviewed-by: never
Wed, 22 Jun 2011 14:45:37 -0700 7057587: JSR 292 - crash with jruby in test/test_respond_to.rb
never [Wed, 22 Jun 2011 14:45:37 -0700] rev 10007
7057587: JSR 292 - crash with jruby in test/test_respond_to.rb Summary: don't skip receiver when GC'ing compiled invokedynamic callsites Reviewed-by: twisti, kvn, jrose
Tue, 21 Jun 2011 09:04:55 -0700 7056380: VM crashes with SIGSEGV in compiled code
never [Tue, 21 Jun 2011 09:04:55 -0700] rev 10006
7056380: VM crashes with SIGSEGV in compiled code Summary: code was using andq reg, imm instead of addq addr, imm Reviewed-by: kvn, jrose, twisti
Mon, 20 Jun 2011 16:45:35 -0700 7052494: Eclipse test fails on JDK 7 b142
kvn [Mon, 20 Jun 2011 16:45:35 -0700] rev 10005
7052494: Eclipse test fails on JDK 7 b142 Summary: Keep 'ne' test in Counted loop when we can't guarantee during compilation that init < limit. Reviewed-by: never
Thu, 16 Jun 2011 13:46:55 -0700 7055355: JSR 292: crash while throwing WrongMethodTypeException
never [Thu, 16 Jun 2011 13:46:55 -0700] rev 10004
7055355: JSR 292: crash while throwing WrongMethodTypeException Reviewed-by: jrose, twisti, bdelsart
Wed, 06 Jul 2011 08:43:01 -0700 Merge
jcoomes [Wed, 06 Jul 2011 08:43:01 -0700] rev 10003
Merge
Tue, 28 Jun 2011 14:23:27 +0200 7016112: CMS: crash during promotion testing
brutisso [Tue, 28 Jun 2011 14:23:27 +0200] rev 10002
7016112: CMS: crash during promotion testing Summary: Also reviewed by mikael.gerdin@oracle.com; stdlib:qsort() does byte-by-byte swapping on Windows. This leads to pointer shearing. Fix is to implement a quicksort that does full pointer updates. Reviewed-by: never, coleenp, ysr
Fri, 24 Jun 2011 12:38:49 -0400 7049999: G1: Make the G1PrintHeapRegions output consistent and complete
tonyp [Fri, 24 Jun 2011 12:38:49 -0400] rev 10001
7049999: G1: Make the G1PrintHeapRegions output consistent and complete Summary: Extend and make more consistent the output from the G1PrintHeapRegions flag. Reviewed-by: johnc, jmasa
Tue, 21 Jun 2011 15:23:07 -0400 7046182: G1: remove unnecessary iterations over the collection set
tonyp [Tue, 21 Jun 2011 15:23:07 -0400] rev 10000
7046182: G1: remove unnecessary iterations over the collection set Summary: Remove two unnecessary iterations over the collection set which are supposed to prepare the RSet's of the CSet regions for parallel iterations (we'll make sure this is done incrementally). I'll piggyback on this CR the removal of the G1_REM_SET_LOGGING code. Reviewed-by: brutisso, johnc
Mon, 20 Jun 2011 22:03:13 -0400 7055073: G1: code cleanup in the concurrentMark.* files
tonyp [Mon, 20 Jun 2011 22:03:13 -0400] rev 9999
7055073: G1: code cleanup in the concurrentMark.* files Summary: Only cosmetic changes to make the concurrentMark.* more consistent, code-style-wise, with the rest of the codebase. Reviewed-by: johnc, ysr
Mon, 20 Jun 2011 09:42:26 -0700 6916968: CMS: freeList.cpp:304 assert(_allocation_stats.prevSweep() + ..., "Conservation Principle")
ysr [Mon, 20 Jun 2011 09:42:26 -0700] rev 9998
6916968: CMS: freeList.cpp:304 assert(_allocation_stats.prevSweep() + ..., "Conservation Principle") Summary: Fix assert and adjust demand volume computation by adding missing factor. Reviewed-by: jmasa, tonyp
Thu, 16 Jun 2011 15:51:57 -0400 6994322: Remove the is_tlab and is_noref / is_large_noref parameters from the CollectedHeap
tonyp [Thu, 16 Jun 2011 15:51:57 -0400] rev 9997
6994322: Remove the is_tlab and is_noref / is_large_noref parameters from the CollectedHeap Summary: Remove two unused parameters from the mem_allocate() method and update its uses accordingly. Reviewed-by: stefank, johnc
Wed, 15 Jun 2011 10:18:04 -0700 7045751: G1: +ExplicitGCInvokesConcurrent causes excessive single region evacuation pauses
johnc [Wed, 15 Jun 2011 10:18:04 -0700] rev 9996
7045751: G1: +ExplicitGCInvokesConcurrent causes excessive single region evacuation pauses Summary: When ExplicitGCInvokesConcurrent is enabled, do not perform an evacuation pause if a marking cycle is already in progress and block the requesting thread until the marking cycle completes. Reviewed-by: tonyp, ysr
Tue, 14 Jun 2011 11:01:10 -0700 7004681: G1: Extend marking verification to Full GCs
johnc [Tue, 14 Jun 2011 11:01:10 -0700] rev 9995
7004681: G1: Extend marking verification to Full GCs Summary: Perform a heap verification after the first phase of G1's full GC using objects' mark words to determine liveness. The third parameter of the heap verification routines, which was used in G1 to determine which marking bitmap to use in liveness calculations, has been changed from a boolean to an enum with values defined for using the mark word, and the 'prev' and 'next' bitmaps. Reviewed-by: tonyp, ysr
Tue, 14 Jun 2011 10:33:43 -0400 7046558: G1: concurrent marking optimizations
tonyp [Tue, 14 Jun 2011 10:33:43 -0400] rev 9994
7046558: G1: concurrent marking optimizations Summary: Some optimizations to improve the concurrent marking phase: specialize the main oop closure, make sure a few methods in the fast path are properly inlined, a few more bits and pieces, and some cosmetic fixes. Reviewed-by: stefank, johnc
Mon, 13 Jun 2011 13:48:18 +0200 6918185: Remove unused code for lost card-marking optimization in BacktraceBuilder
brutisso [Mon, 13 Jun 2011 13:48:18 +0200] rev 9993
6918185: Remove unused code for lost card-marking optimization in BacktraceBuilder Summary: Removed dead code Reviewed-by: ysr, coleenp, dholmes
Mon, 13 Jun 2011 09:58:16 -0700 7051430: CMS: ongoing CMS cycle should terminate abruptly to allow prompt JVM termination at exit
ysr [Mon, 13 Jun 2011 09:58:16 -0700] rev 9992
7051430: CMS: ongoing CMS cycle should terminate abruptly to allow prompt JVM termination at exit Summary: It turns out that there is no need to explicitly stop CMS since the JVM is taken down at a terminal safepoint during which CMS threads are (terminally) inactive. This will need to be revised if and when we evolve in the future to a point where we allow JVM reincarnation in the same process, but those changes will be much more sweeping than just terminating CMS threads. The unused ::stop() methods will be removed in a separate CR. Also include in this CR is the fix for a small typo in the spelling of UseGCLogFileRotation in a message in arguments.cpp, brought to our attention by Rainer Jung and reviewed by minqi. Reviewed-by: johnc, jwilhelm
Fri, 10 Jun 2011 15:44:02 -0700 Merge
minqi [Fri, 10 Jun 2011 15:44:02 -0700] rev 9991
Merge
Fri, 10 Jun 2011 15:08:36 -0700 6941923: RFE: Handling large log files produced by long running Java Applications
minqi [Fri, 10 Jun 2011 15:08:36 -0700] rev 9990
6941923: RFE: Handling large log files produced by long running Java Applications Summary: supply optinal flags to realize gc log rotation Reviewed-by: ysr, jwilhelm
Fri, 10 Jun 2011 13:16:40 -0400 7045330: G1: Simplify/fix the HeapRegionSeq class
tonyp [Fri, 10 Jun 2011 13:16:40 -0400] rev 9989
7045330: G1: Simplify/fix the HeapRegionSeq class 7042285: G1: native memory leak during humongous object allocation 6804436: G1: heap region indices should be size_t Summary: A series of fixes and improvements to the HeapRegionSeq class: a) replace the _regions growable array with a standard C array, b) avoid de-allocating / re-allocating HeapRegion instances when the heap shrinks / grows (fix for 7042285), c) introduce fast method to map address to HeapRegion via a "biased" array pointer, d) embed the _hrs object in G1CollectedHeap, instead of pointing to it via an indirection, e) assume that all the regions added to the HeapRegionSeq instance are contiguous, f) replace int's with size_t's for indexes (and expand that to HeapRegion as part of 6804436), g) remove unnecessary / unused methods, h) rename a couple of fields (_alloc_search_start and _seq_bottom), i) fix iterate_from() not to always start from index 0 irrespective of the region passed to it, j) add a verification method to check the HeapRegionSeq assumptions, k) always call the wrappers for _hrs.iterate(), _hrs_length(), and _hrs.at() from G1CollectedHeap, not those methods directly, and l) unify the code that expands the sequence (by either re-using or creating a new HeapRegion) and make it robust wrt to a HeapRegion allocation failing. Reviewed-by: stefank, johnc, brutisso
Wed, 08 Jun 2011 21:48:38 -0400 7045662: G1: OopsInHeapRegionClosure::set_region() should not be virtual
tonyp [Wed, 08 Jun 2011 21:48:38 -0400] rev 9988
7045662: G1: OopsInHeapRegionClosure::set_region() should not be virtual Summary: make the method non-virtual, remove five unused closures, and fix a couple of copyright typos. Reviewed-by: stefank, johnc, poonam
Wed, 08 Jun 2011 15:31:51 -0400 7032531: G1: enhance GC logging to include more accurate eden / survivor size transitions
tonyp [Wed, 08 Jun 2011 15:31:51 -0400] rev 9987
7032531: G1: enhance GC logging to include more accurate eden / survivor size transitions Summary: This changeset extends the logging information generated by +PrintGCDetails to also print out separate size transitions for the eden, survivors, and old regions. Reviewed-by: ysr, brutisso
Wed, 08 Jun 2011 08:39:53 -0700 Merge
ysr [Wed, 08 Jun 2011 08:39:53 -0700] rev 9986
Merge
Thu, 02 Jun 2011 10:23:36 -0700 7048782: CMS: assert(last_chunk_index_to_check<= last_chunk_index) failed: parCardTableModRefBS.cpp:359
ysr [Thu, 02 Jun 2011 10:23:36 -0700] rev 9985
7048782: CMS: assert(last_chunk_index_to_check<= last_chunk_index) failed: parCardTableModRefBS.cpp:359 Summary: The LNC array is sized before the start of a scavenge, while the heap may expand during a scavenge. With CMS, the last block of an arbitrary suffice of the LNC array may expand due to coalition with the expansion delta. We now take care not to attempt access past the end of the LNC array. LNC array code will be cleaned up and suitably encapsulated as part of the forthcoming performance RFE 7043675. Reviewed-by: brutisso
(0) -10000 -3000 -1000 -300 -100 -50 -30 +30 +50 +100 +300 +1000 +3000 +10000 +30000 tip