Commit Graph

2624 Commits

Author SHA1 Message Date
Erik Trimble
4a81ae28b7 Merge 2011-07-23 01:56:51 -07:00
David Holmes
536904f7d3 7046490: Preallocated OOME objects should obey Throwable stack trace protocol
Update the OOME stacktrace to contain Throwable.UNASSIGNED_STACK when the backtrace is filled in

Reviewed-by: mchung, phh
2011-07-22 00:29:01 -07:00
Vladimir Kozlov
48c1293916 7063628: Use cbcond on T4
Add new short branch instruction to Hotspot sparc assembler.

Reviewed-by: never, twisti, jrose
2011-07-21 11:25:07 -07:00
Tom Rodriguez
aa16309657 7012081: JSR 292: SA-JDI can't read MH/MT/Indy ConstantPool entries
Reviewed-by: kvn, twisti, jrose
2011-07-21 08:38:25 -07:00
Igor Veresov
aa89b8c08d 7066339: Tiered: policy should make consistent decisions about osr levels
Added feedback disabling flag to common(), fixed handling of TieredStopAtLevel.

Reviewed-by: kvn, never
2011-07-20 18:04:17 -07:00
Coleen Phillimore
0d6e53412e Merge 2011-07-16 22:21:39 -04:00
Tom Rodriguez
8acdd5ce55 6990212: JSR 292 JVMTI MethodEnter hook is not called for JSR 292 bootstrap and target methods
Check for single stepping when dispatching invokes from method handles

Reviewed-by: coleenp, twisti, kvn, dsamersoff
2011-07-15 15:35:50 -07:00
Vladimir Kozlov
cf91e8dbca 7067288: compiler regression test Test7052494 timeouts with client VM
Test is modified to reduce number of iterations in test5() and test6().

Reviewed-by: never, iveresov
2011-07-14 15:39:40 -07:00
Vladimir Kozlov
fcc8abec1e Merge 2011-07-13 10:48:42 -07:00
Zhengyu Gu
fcba257a74 7065535: Mistyped function name that disabled UseLargePages on Windows
Missing suffix "A" of Windows API LookupPrivilegeValue failed finding function pointer, caused VM to disable UseLargePages option

Reviewed-by: coleenp, phh
2011-07-12 21:13:53 -04:00
John Coomes
abe5e3a903 Merge 2011-07-12 16:32:25 -07:00
John Coomes
61e2d7af10 7061212: use o/s low memory notification in embedded builds
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-11 14:15:43 -07:00
Igor Veresov
09a3aca98b 7058510: multinewarray with 6 dimensions uncommon traps in server compiler
Pass arguments to runtime via java array for arrays with > 5 dimensions

Reviewed-by: never, kvn, jrose, pbk
2011-07-08 15:33:03 -07:00
Vladimir Kozlov
20a26c54cd 7059034: Use movxtod/movdtox on T4
Use new VIS3 mov instructions on T4 for move data between general and float registers.

Reviewed-by: never, twisti
2011-07-08 09:38:48 -07:00
Coleen Phillimore
f854e0370d Merge 2011-07-07 22:34:34 -04:00
John Coomes
bf486b030a 7053189: remove some unnecessary platform-dependent includes
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-07 15:44:34 -07:00
Vladimir Kozlov
9120c1e85c Merge 2011-07-07 10:51:07 -07:00
Tom Rodriguez
d57ae98564 7062856: Disassembler needs to be smarter about finding hsdis after 1.7 launcher changes
Do explicit lookup emulating old LD_LIBRARY_PATH search

Reviewed-by: kvn, jrose
2011-07-06 18:15:21 -07:00
John Coomes
804e3e1d96 7061225: os::print_cpu_info() should support os-specific data
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 13:02:54 -07:00
John Coomes
73687afa5e 7061204: clean the chunk table synchronously in embedded builds
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 12:28:07 -07:00
John Coomes
c76b491afb 7061197: ThreadLocalStorage sp map table should be optional
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 12:22:29 -07:00
John Coomes
769ba74d9c 7061192: option handling adjustments for oracle and embedded builds
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 12:17:44 -07:00
John Coomes
07d5e13794 7061187: need some includes for arm/ppc
Reviewed-by: dholmes, never, jwilhelm, kvn
2011-07-06 12:03:01 -07:00
Tom Rodriguez
d23654d851 7061101: adlc should complain about mixing block and expression forms of ins_encode
Reviewed-by: kvn
2011-07-06 09:27:54 -07:00
John Coomes
ce3ae66eeb Merge 2011-07-06 08:43:01 -07:00
Tom Rodriguez
2337123692 6478991: C1 NullCheckEliminator yields incorrect exceptions
Reviewed-by: twisti, iveresov
2011-07-05 16:07:54 -07:00
David Holmes
1b8996c8b4 7052988: JPRT embedded builds don't set MINIMIZE_RAM_USAGE
Reviewed-by: kamg, dsamersoff
2011-07-02 04:17:12 -04:00
Erik Trimble
d82d76ad4f 7061691: Fork HS21 to HS22 - renumber Minor and build numbers of JVM
Update the Minor and Build numbers for HS22 fork

Reviewed-by: jcoomes
2011-07-01 13:07:16 -07:00
Igor Veresov
47caaa4c06 7057120: Tiered: Allow C1 to inline methods with loops
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
2011-07-01 10:37:37 -07:00
Igor Veresov
528a9bb452 7058689: Tiered: Reprofiling doesn't happen in presence of level 4 OSR methods
Take into account current state of profiling before believing that existing higher level versions are valid

Reviewed-by: kvn, never
2011-07-01 10:35:54 -07:00
Ashok Srinivasa Murthy
774aa0130a 6951623: 3/3 possible performance problems in FollowReferences() and GetObjectsWithTags()
Call collect_stack_roots() before collect_simple_roots() as an optimization.

Reviewed-by: ysr, dsamersoff, dcubed
2011-06-29 20:28:58 -07:00
Vladimir Kozlov
b443bf1f4c 7047954: VM crashes with assert(is_Mem()) failed
Cast constant array ptrs to bottom

Reviewed-by: never
2011-06-28 15:50:07 -07:00
Vladimir Kozlov
b3505a88a4 7044738: Loop unroll optimization causes incorrect result
Take into account memory dependencies when clonning nodes in clone_up_backedge_goo().

Reviewed-by: never
2011-06-28 15:24:29 -07:00
Vladimir Kozlov
565f8579ac 6990015: Incorrect Icache line size is used for 64 bit x86
Correct Icache::line_size for x64 and add verification code into vm_version_x86.

Reviewed-by: never, phh
2011-06-28 15:04:39 -07:00
Krystal Mok
976fd97ddf 7058036: FieldsAllocationStyle=2 does not work in 32-bit VM
ParseClassFile() incorrectly uses nonstatic_oop_map_size() method instead of nonstatic_oop_map_count().

Reviewed-by: never
2011-06-28 14:30:27 -07:00
Bengt Rutisson
3aaa5fb06d 7016112: CMS: crash during promotion testing
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
2011-06-28 14:23:27 +02:00
Antonios Printezis
4597e4c7a8 7049999: G1: Make the G1PrintHeapRegions output consistent and complete
Extend and make more consistent the output from the G1PrintHeapRegions flag.

Reviewed-by: johnc, jmasa
2011-06-24 12:38:49 -04:00
Ashok Srinivasa Murthy
bc408da53d 7043987: 3/3 JVMTI FollowReferences is slow
VM_HeapWalkOperation::doit() should only reset mark bits when necessary.

Reviewed-by: dsamersoff, ysr, dholmes, dcubed
2011-06-23 20:31:43 -07:00
John R Rose
8df44305c7 7056328: JSR 292 invocation sometimes fails in adapters for types not on boot class path
Reviewed-by: never
2011-06-23 17:14:06 -07:00
Tom Rodriguez
15161b8cd1 7057587: JSR 292 - crash with jruby in test/test_respond_to.rb
Don't skip receiver when GC'ing compiled invokedynamic callsites

Reviewed-by: twisti, kvn, jrose
2011-06-22 14:45:37 -07:00
Jeff Dinkins
e43b81c035 7057046: Add embedded license to THIRD PARTY README
Reviewed-by: lana
2011-06-22 10:10:25 -07:00
Antonios Printezis
408e0b1bc1 7046182: G1: remove unnecessary iterations over the collection set
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
2011-06-21 15:23:07 -04:00
Tom Rodriguez
7c1d16f7d3 7056380: VM crashes with SIGSEGV in compiled code
Code was using andq reg, imm instead of addq addr, imm

Reviewed-by: kvn, jrose, twisti
2011-06-21 09:04:55 -07:00
Antonios Printezis
7ceee7642b 7055073: G1: code cleanup in the concurrentMark.* files
Only cosmetic changes to make the concurrentMark.* more consistent, code-style-wise, with the rest of the codebase.

Reviewed-by: johnc, ysr
2011-06-20 22:03:13 -04:00
Vladimir Kozlov
d19a8f6e35 7052494: Eclipse test fails on JDK 7 b142
Keep 'ne' test in Counted loop when we can't guarantee during compilation that init < limit.

Reviewed-by: never
2011-06-20 16:45:35 -07:00
Y. Srinivas Ramakrishna
45f42598c1 6916968: CMS: freeList.cpp:304 assert(_allocation_stats.prevSweep() + ..., "Conservation Principle")
Fix assert and adjust demand volume computation by adding missing factor.

Reviewed-by: jmasa, tonyp
2011-06-20 09:42:26 -07:00
Tom Rodriguez
5d2e4e676b 7055355: JSR 292: crash while throwing WrongMethodTypeException
Reviewed-by: jrose, twisti, bdelsart
2011-06-16 13:46:55 -07:00
Antonios Printezis
937d6ded89 6994322: Remove the is_tlab and is_noref / is_large_noref parameters from the CollectedHeap
Remove two unused parameters from the mem_allocate() method and update its uses accordingly.

Reviewed-by: stefank, johnc
2011-06-16 15:51:57 -04:00
Abhijit Saha
6af175455a 7055247: Ignore test of # 7020373
Reviewed-by: dcubed
2011-06-15 14:59:55 -07:00
Tom Rodriguez
ca8939dd80 Merge 2011-06-15 10:20:03 -07:00
John Cuthbertson
43d9e95a42 7045751: G1: +ExplicitGCInvokesConcurrent causes excessive single region evacuation pauses
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
2011-06-15 10:18:04 -07:00
Tom Rodriguez
a21aad64af Merge 2011-06-14 15:20:55 -07:00
Tom Rodriguez
0c0705ca8c 7052219: JSR 292: Crash in ~BufferBlob::MethodHandles adapters
Reviewed-by: twisti, kvn, jrose
2011-06-14 14:41:33 -07:00
Christian Thalinger
5919a613cc 7053520: JSR292: crash in invokedynamic with C1 using tiered and compressed oops
Reviewed-by: iveresov, never
2011-06-14 12:25:05 -07:00
John Cuthbertson
b94d0b830c 7004681: G1: Extend marking verification to Full GCs
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
2011-06-14 11:01:10 -07:00
Antonios Printezis
015e872efe 7046558: G1: concurrent marking optimizations
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
2011-06-14 10:33:43 -04:00
Bengt Rutisson
c0d64ac595 6918185: Remove unused code for lost card-marking optimization in BacktraceBuilder
Removed dead code

Reviewed-by: ysr, coleenp, dholmes
2011-06-13 13:48:18 +02:00
Y. Srinivas Ramakrishna
9ca97e4c78 7051430: CMS: ongoing CMS cycle should terminate abruptly to allow prompt JVM termination at exit
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
2011-06-13 09:58:16 -07:00
Yumin Qi
f79196c54c Merge 2011-06-10 15:44:02 -07:00
Yumin Qi
5d0ad03a55 6941923: RFE: Handling large log files produced by long running Java Applications
Supply optinal flags to realize gc log rotation

Reviewed-by: ysr, jwilhelm
2011-06-10 15:08:36 -07:00
Antonios Printezis
9332c44d84 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

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
2011-06-10 13:16:40 -04:00
Antonios Printezis
6d6d8a571c 7045662: G1: OopsInHeapRegionClosure::set_region() should not be virtual
Make the method non-virtual, remove five unused closures, and fix a couple of copyright typos.

Reviewed-by: stefank, johnc, poonam
2011-06-08 21:48:38 -04:00
John R Rose
bb3a527f9a 7047697: MethodHandle.invokeExact call for wrong method causes VM failure if run with -Xcomp
Reviewed-by: never, twisti
2011-06-08 17:04:06 -07:00
Dmitry Samersoff
62767e93dc Merge 2011-06-09 01:33:42 +04:00
Antonios Printezis
507bff762b 7032531: G1: enhance GC logging to include more accurate eden / survivor size transitions
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
2011-06-08 15:31:51 -04:00
Y. Srinivas Ramakrishna
93d9f1ddd9 Merge 2011-06-08 08:39:53 -07:00
John Coomes
b45fdce61d Merge 2011-06-07 13:17:05 -07:00
Vladimir Kozlov
18dd7131d0 7050280: assert(u->as_Unlock()->is_eliminated()) failed: sanity
Mark all associated (same box and obj) lock and unlock nodes for elimination if some of them marked already.

Reviewed-by: iveresov, never
2011-06-04 10:36:22 -07:00
Tom Rodriguez
a664e486bd 7045514: SPARC assembly code for JSR 292 ricochet frames
Reviewed-by: kvn, jrose
2011-06-03 22:31:43 -07:00
Coleen Phillimore
8f2d760f58 Merge 2011-06-02 21:01:48 -07:00
Tom Rodriguez
e666162b03 7050554: JSR 292 - need optimization for selectAlternative
Reviewed-by: kvn, jrose
2011-06-02 13:36:11 -07:00
Coleen Phillimore
991018b6b2 7049928: VM crashes with "assert(_adapter != NULL) failed: must have" at methodOop.cpp:63
Removed extra change from another bug fix that caused this regression

Reviewed-by: phh, dcubed, kvn, kamg, never
2011-06-02 14:17:48 -04:00
Y. Srinivas Ramakrishna
a893b9dd91 7048782: CMS: assert(last_chunk_index_to_check<= last_chunk_index) failed: parCardTableModRefBS.cpp:359
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
2011-06-02 10:23:36 -07:00
John R Rose
8465226f29 7049410: JSR 292 old method name MethodHandle.invokeGeneric should not be accepted by the JVM
Change the default setting of the flag AllowInvokeGeneric to false

Reviewed-by: never
2011-06-01 23:25:31 -07:00
John R Rose
0ed03852e5 7049415: Failure of resolution of sym.reference to the c.s.s. should be wrapped in BootstrapMethodError
Delegate invokedynamic linkage errors to MethodHandleNatives.raiseException.

Reviewed-by: never
2011-06-01 23:25:20 -07:00
Vladimir Kozlov
a8556d6c01 6956668: misbehavior of XOR operator (^) with int
Optimize cmp_ne(xor(X,1),0) to cmp_eq(X,0) only for boolean values X.

Reviewed-by: never
2011-05-31 10:05:36 -07:00
Vladimir Kozlov
c3a7796068 7047069: Array can dynamically change size when assigned to an object field
Fix initialization of a newly-allocated array with arraycopy

Reviewed-by: never
2011-05-27 12:47:48 -07:00
Y. Srinivas Ramakrishna
8a46284b54 7048342: CMS: eob == _limit || fc->isFree() failed: Only a free chunk should allow us to cross over the limit
The freeness bit was being cleared in debug code when it shouldn't have been. Also removed unused FreeChunk methods linkAfterNonNull and clearPrev.

Reviewed-by: brutisso
2011-05-27 10:23:03 -07:00
Tom Rodriguez
382a3145b9 Merge 2011-05-26 16:39:34 -07:00
Tom Rodriguez
7cf200bd15 7047961: JSR 292 MethodHandleWalk swap args doesn't handle T_LONG and T_DOUBLE properly
Reviewed-by: kvn, jrose
2011-05-26 14:44:41 -07:00
Igor Veresov
193c0ac698 7047491: C1: registers saved incorrectly when calling checkcast_arraycopy stub
Save and restore the argument registers around the call to checkcast_arraycopy

Reviewed-by: never, roland
2011-05-26 13:15:01 -07:00
Vladimir Kozlov
a1e18b9ed3 7048332: Cadd_cmpLTMask doesn't handle 64-bit tmp register properly
Use ins_encode %{ %} form to encode cadd_cmpLTMask() instruction and remove unused code.

Reviewed-by: never
2011-05-25 21:17:07 -07:00
Tom Rodriguez
f6d95d906a 7046732: JSR 292 assert(result == cpce->f1()) failed: expected result for assembly code
Reviewed-by: kvn, iveresov, jrose
2011-05-25 16:04:09 -07:00
Vladimir Kozlov
65530c9100 7048030: is_scavengable changes causing compiler to embed more constants
CiObject::can_be_constant() and should_be_constant() should use is_perm() instead of !is_scavengable()

Reviewed-by: never, jrose
2011-05-24 20:24:11 -07:00
Thomas Salter
da271b804e 7046893: LP64 problem with double_quadword in c1_LIRAssembler_x86.cpp
Fixed invalid casts in address computation

Reviewed-by: kvn, never
2011-05-24 15:30:05 -07:00
Mark Reinhold
44af04a583 7048009: Update .jcheck/conf files for JDK 8
Reviewed-by: jjh
2011-05-24 15:28:35 -07:00
Erik Trimble
8826c8bf9f Merge 2011-05-24 14:07:12 -07:00
Erik Trimble
88f5cae01f Added tag hs21-b13 for changeset c59e039b8a59 2011-05-24 14:02:47 -07:00
Vladimir Kozlov
69bcf41540 7047300: VM crashes with assert(_base == InstPtr) failed: Not an object pointer
The code incorrectly used is_instptr() instead of is_oopptr() to get const_oop.

Reviewed-by: never
2011-05-24 12:54:51 -07:00
Y. Srinivas Ramakrishna
ed15a87975 7042740: CMS: assert(n> q) failed: Looping at: ... blockOffsetTable.cpp:557
Do a one-step look-ahead, when sweeping free or garbage blocks, to avoid overstepping sweep limit, which may become a non-block-boundary because of a heap expansion delta coalescing with a previously co-terminal free block.

Reviewed-by: brutisso, tonyp
2011-05-23 16:42:14 -07:00
Coleen Phillimore
57769e3600 7033141: assert(has_cp_cache(i)) failed: oob
Unrewrite bytecodes for OOM error allocating the constant pool cache.

Reviewed-by: dcubed, acorn, never
2011-05-21 15:39:54 -07:00
Vladimir Kozlov
800a1a0611 7045506: assert(!can_reshape || !new_phi) failed: for igvn new phi should be hooked
Replace the assert in PhiNode::Ideal with check to avoid transformation of new phi.

Reviewed-by: never
2011-05-21 13:59:55 -07:00
Vladimir Kozlov
0aff6e35b8 7045693: java/util/EnumSet/EnumSetBash.java still failing intermittently
New limit for unrolled loop should be set only for zero trip guard and loop iteration test.

Reviewed-by: never
2011-05-21 11:44:31 -07:00
John Coomes
8b76becfe7 Merge 2011-05-20 22:27:48 -07:00
Suchen Chien
0b8be06024 Added tag jdk7-b143 for changeset c59e039b8a59 2011-05-20 16:03:55 -07:00
Vladimir Kozlov
8d44d62173 7046096: SEGV IN C2 WITH 6U25
Missing fail flag set in strings concatenation code.

Reviewed-by: never
2011-05-20 12:46:20 -07:00
Erik Trimble
81013a98d0 7040781: Bump the HS21 build number to 14
Update the HS21 build number to 14

Reviewed-by: jcoomes
2011-05-20 05:24:46 -07:00
Tom Rodriguez
b95e28d25a Merge 2011-05-18 11:45:06 -07:00
Keith McGuigan
33cd8e7aa0 Merge 2011-05-18 10:12:31 -04:00
Bengt Rutisson
5417807e7a Merge 2011-05-18 13:19:32 +02:00