Commit Graph

4918 Commits

Author SHA1 Message Date
Albert Noll
7e1059b62d 8034216: assert(false) failed: infinite loop in PhaseIterGVN::optimize
Eagerly remove all castPP nodes in PhaseCCP to get type convergence in memnode.

Reviewed-by: kvn, roland
2014-04-11 11:33:00 +02:00
Igor Veresov
e6456ff2a4 8038297: Avoid placing CTI immediately following cbcond instruction on T4
Insert a nop between cbcond and CTI

Reviewed-by: kvn, twisti
2014-04-10 23:15:13 -07:00
Roland Westrelin
522abfc113 8005079: fix LogCompilation for incremental inlining
Report late inlining as part of the rest of the inlining output

Reviewed-by: twisti, kvn
2014-04-10 11:38:12 +02:00
Tobias Hartmann
65d6e6b331 8036898: assert(t != NULL) failed: must set before get
Ignore nodes without a type when checking for speculative types in Compile::remove_speculative_types(...).

Reviewed-by: kvn, roland
2014-04-10 09:26:24 +02:00
Vladimir Kozlov
77d38feb95 8038633: crash in VM_Version::get_processor_features() on startup
Windows need an exception wrapper around getPsrInfo_stub() call in order to properly handle SEGV for YMM registers test.

Reviewed-by: iveresov, iignatyev
2014-03-31 13:08:03 -07:00
Erik Helin
977d1f7a5d 8038934: Remove prefix allocated_ from methods and variables in Metaspace
Reviewed-by: jmasa, coleenp
2014-03-31 17:09:38 +02:00
Goetz Lindenmaier
f67a3b7e04 8038498: Fix includes and C inlining after 8035330
Change 8035330: Remove G1ParScanPartialArrayClosure and G1ParScanHeapEvacClosure broke the debug build on AIX. The method do_oop_partial_array() is added in a header, but requires the inline function par_write_ref() through several inlined calls. In some cpp files, like arguments.cpp, par_write_ref() is not defined as the corresponding inline header and is not included. The AIX debug VM does not start because of the missing symbol. This change solves this by cleaning up include dependencies.

Reviewed-by: tschatzl, stefank
2014-04-02 09:17:38 +02:00
Erik Helin
510abf997b Merge 2014-04-01 15:37:15 +02:00
Bengt Rutisson
1f5e01e4f4 8038829: G1: More useful information in a few assert messages
Reviewed-by: sjohanss, jmasa
2014-04-01 07:46:51 +02:00
Roland Westrelin
b21d142f01 8037970: make PrintMethodData a diagnostic options
Make PrintMethodData a diagnostic options for performance investigation

Reviewed-by: kvn, iveresov
2014-03-31 10:35:06 +02:00
Roland Westrelin
fa3b0a8f47 8031755: Type speculation should be used to optimize explicit null checks
Feed profiling data about reference nullness to type speculation.

Reviewed-by: kvn, iveresov
2014-03-31 09:08:53 +02:00
Dmitry Samersoff
5c15816a53 Merge 2014-03-30 03:29:48 -07:00
Erik Helin
64a7637148 Merge 2014-03-28 10:41:20 +01:00
Nils Eliasson
c3f6e08de3 Merge 2014-03-27 14:15:42 +01:00
Dmitry Samersoff
444fceb59d Merge 2014-03-27 03:14:45 -07:00
Igor Ignatyev
d9187e9799 8038240: new WB API to get nmethod
Reviewed-by: morris, kvn
2014-03-27 11:17:26 +04:00
Erik Helin
a00bf70f6f 8035667: EventMetaspaceSummary doesn't report committed Metaspace memory
Reviewed-by: jmasa, stefank
2014-03-26 14:15:02 +01:00
Jiangli Zhou
7f7515a809 Merge 2014-03-25 17:33:16 -04:00
Lutz Schmidt
ac75d4fc2f 8037821: Account for trampoline stubs when estimating code buffer sizes
Take into account space needed for "trampoline code" used by calls on PPC64.

Reviewed-by: kvn
2014-03-25 12:54:21 -07:00
Igor Veresov
ddc2f91ab4 8038222: Assembler::bsrl fails on assert when -UseCountLeadingZerosInstruction is used on CPU with LZCNT support
Remove the overly strict assert

Reviewed-by: kvn, twisti
2014-03-24 23:13:46 -07:00
Vladimir Kozlov
04e8f32451 8038286: nm->set_rtm_state() should be called after (nm != NULL) check
Move set_rtm_state() call after (nm != NULL) check

Reviewed-by: iveresov, twisti
2014-03-24 17:44:27 -07:00
Calvin Cheung
1c9ebd2beb 8033566: [parfait] warning from b128 for hotspot/src/share/vm/runtime/frame.cpp: JNI primitive type mismatch
Added an assert for checking the return value is <= max_jint

Reviewed-by: coleenp, minqi
2014-03-24 10:48:44 -07:00
Poonam Bajaj
1516f610a1 6653795: C2 intrinsic for Unsafe.getAddress performs pointer sign extension on 32-bit systems
Native pointers less than 64 bits wide should be extended as an unsigned number.

Reviewed-by: kvn, kevinw
2014-03-24 08:43:10 -07:00
Dmitry Samersoff
ba76cc617e Merge 2014-03-23 08:31:44 -07:00
Vladimir Kozlov
93c0cc2aa8 8038181: Can't build product VM without precompiled header
Added missing #include.

Reviewed-by: twisti
2014-03-21 18:03:11 -07:00
Filipp Zhinkin
8167043964 8035857: Add tests to verify correctness of operations with BMI1 and LZCNT instructions
Reviewed-by: iveresov, kvn, iignatyev
2014-03-22 00:26:48 +04:00
Erik Helin
386f42f40c Merge 2014-03-21 09:11:56 +01:00
Goetz Lindenmaier
e3ebae0947 8037962: metaspaceTracer.cpp misses a symbol
Reviewed-by: tschatzl, mgerdin
2014-03-20 15:53:17 +01:00
Markus Grönlund
15e6b91ca5 8037340: Linux semaphores to use CLOCK_REALTIME
Reviewed-by: dholmes, sla
2014-03-20 14:28:25 +01:00
Goetz Lindenmaier
fc7f4197f1 8037915: PPC64/AIX: Several smaller fixes
Reviewed-by: kvn
2014-03-20 11:03:06 +01:00
Vladimir Kozlov
97a51c5c2a 8031320: Use Intel RTM instructions for locks
Use RTM for inflated locks and stack locks.

Reviewed-by: iveresov, twisti, roland, dcubed
2014-03-20 17:49:27 -07:00
Christian Thalinger
315e4838e9 8031203: remove SafepointPollOffset
Reviewed-by: kvn, roland
2014-03-19 11:37:58 -07:00
Stefan Johansson
1ed5b22d6e 8029186: regression-hotspot nightly failure: assert(FLAG_IS_DEFAULT(MaxNewSize) || MaxNewSize < MaxHeapSize) failed
Cleaned up the collector policy and added more asserts to enforce that the heap is correctly setup.

Reviewed-by: jwilhelm, jmasa
2014-03-19 17:08:03 +01:00
Erik Helin
395c71590f 8034094: SA agent can't compile when jni_x86.h is used
Reviewed-by: dsamersoff, erikj
2014-03-19 17:04:28 +01:00
Andreas Sjoberg
0a39721031 8026784: Error message in AdaptiveFreeList<Chunk>::verify_stats is wrong
Changed faulty error message in the verification code

Reviewed-by: stefank, tschatzl
2014-05-06 09:41:04 +02:00
Jesper Wilhelmsson
f460a98570 Merge 2014-05-02 21:10:31 +00:00
Jesper Wilhelmsson
0346ae4c9d 8027643: Merge GenCollectorPolicy and TwoGenerationCollectorPolicy
Merged the two calsses GenCollectorPolicy and TwoGenerationCollectorPolicy

Reviewed-by: sjohanss, jcoomes
2014-04-29 22:57:19 +02:00
Per Lidén
4a4c0fce93 8029075: String deduplication in G1
Implementation of JEP 192, http://openjdk.java.net/jeps/192

Reviewed-by: brutisso, tschatzl, coleenp
2014-03-18 19:07:22 +01:00
Coleen Phillimore
4880019b3e 8036630: Null ProtectionDomain in JVM can cause NPE because principals field is not initialized to an empty array
Call ProtectionDomain constructor instead of making all fields null.

Reviewed-by: fparain, zgu
2014-03-18 13:45:27 -04:00
Nils Eliasson
5827f6e16c Merge 2014-03-18 14:22:42 +01:00
Serguei Spitsyn
6c36e9d3fd 6976636: JVM/TI test ex03t001 fails assertion
Relax assert in the post_class_unload for the CMS case

Reviewed-by: dcubed, dsamersoff
2014-03-17 19:29:29 -07:00
Zhengyu Gu
da4aab3c1d 8025550: valgrind: Conditional jump depends on uninitialised value in Arena::set_size_in_bytes()
Fixed initialized variable that could miscount arena memory

Reviewed-by: coleenp, ccheung
2014-03-17 13:39:17 -04:00
Dmitry Samersoff
903d462556 Merge 2014-03-15 04:03:42 -07:00
Vladimir Kozlov
d3f1dc78ef 8037226: compiler/7196199/Test7196199.java fails on 32-bit linux with MaxVectorSize > 16
Verify YMM registers after signal processing and set limit on vector's size.

Reviewed-by: iveresov, twisti
2014-03-14 17:28:58 -07:00
Yumin Qi
f2fbd2207d 6536943: Bogus -Xcheck:jni warning for SIG_INT action for SIGINT in JVM started from non-interactive shell
Under non-interactive shell, with -Xcheck:jni, check_signal_handler will print out Warning for SHURDOWN2_SIGNAL (SIGINT) which is replaced by non-interactive shell. Fix by supply more information of the replacement to user.

Reviewed-by: acorn, dsamersoff
2014-03-14 14:17:11 -07:00
Erik Helin
e88724d567 Merge 2014-03-14 13:27:18 +01:00
Frederic Parain
2655375438 8036128: Remove deprecated VM flag UseVMInterruptibleIO
Reviewed-by: acorn, dholmes, dcubed, coleenp
2014-03-14 12:02:54 +00:00
Nils Eliasson
8c46e61622 Merge 2014-03-14 09:26:27 +01:00
Erik Helin
358b5bbebc Merge 2014-03-14 09:18:39 +01:00
Igor Veresov
a415d90691 8037140: C1: Incorrect argument type used for SharedRuntime::OSR_migration_end in LIRGenerator::do_Goto
Fix the type of osrBuffer parameter to depend on bitness

Reviewed-by: kvn, twisti
2014-03-13 14:55:34 -07:00
Igor Veresov
af7a190f21 8037149: C1: getThreadTemp should return a T_LONG register on 64bit
Fix the type of the register returned by getThreadTemp() to depend on bitness

Reviewed-by: kvn, twisti
2014-03-13 14:55:10 -07:00
Erik Helin
1d21f8975b Merge 2014-03-12 13:02:47 +01:00
Axel Siebenborn
6035ac234b 8036666: VMTI GetObjectMonitorUsage does not return correct recursion count
Fix object lock recursion count and add test

Reviewed-by: sspitsyn, dsamersoff
2014-03-11 15:22:44 +01:00
Yasumasa Suenaga
57d7e49ab1 7090324: gclog rotation via external tool
GC log rotation can be set via java command line, but customer sometime need to sync with OS level rotation setting.

Reviewed-by: sla, minqi, ehelin
2014-03-28 21:04:37 -07:00
Coleen Phillimore
472622d900 8031820: NPG: Fix remaining references to metadata as oops in comments
8012125: Comments for ConstantPoolCache should reflect the addition of resolved_references in ConstantPool

Updated comments in metadata header files, and renamed this_oop variables to this_cp or this_k when referring to constant pool or classes.

Reviewed-by: stefank, jmasa
2014-03-26 21:47:45 -04:00
Erik Helin
80025a5e2b Merge 2014-03-11 15:14:46 +01:00
Vladimir Ivanov
38d80b03c4 8023461: Thread holding lock at safepoint that vm can block on: MethodCompileQueue_lock
Reviewed-by: kvn, iveresov
2014-03-11 15:06:34 +04:00
Igor Veresov
54db2c2d61 8032463: VirtualDispatch test timeout with DeoptimizeALot
Introduce code aging for warm method detection

Reviewed-by: kvn, twisti
2014-05-13 11:32:10 -07:00
Tobias Hartmann
5938d3d5b9 8021770: BackEdgeThreshold option is no longer used and should be removed
The BackEdgeThreshold option is removed because it is no longer used.

Reviewed-by: twisti, kvn, cjplummer
2014-05-13 11:25:17 +02:00
Christian Thalinger
c780be1a3a Merge 2014-05-12 17:01:57 -07:00
Tobias Hartmann
d2af4e35ec 8029343: CodeCache::allocate increments '_number_of_blobs' even if allocation fails
Incrementing the number of code blobs in CodeCache::allocate(...) is now only performed if allocation succeeds. The guarantee is fixed.

Reviewed-by: kvn, iveresov
2014-05-09 09:12:39 +02:00
Christian Thalinger
013509580f Merge 2014-05-08 15:16:49 -07:00
Albert Noll
ae28b717f4 8042431: compiler/7200264/TestIntVect.java fails with: Test Failed: AddVI 0 < 4
Define a new function that determines the minimum number of compiler threads for a particular platform/configuration.

Reviewed-by: kvn
2014-05-08 12:49:21 +02:00
Axel Siebenborn
faad7883f2 8036976: PPC64: implement the template interpreter
Co-authored-by: Martin Doerr <martin.doerr@sap.com>
Reviewed-by: kvn, coleenp
2014-03-10 12:58:02 +01:00
Igor Veresov
768beb9a23 8031321: Support Intel bit manipulation instructions
Add support for BMI1 instructions

Reviewed-by: kvn, roland
2014-03-12 11:24:26 -07:00
Christian Thalinger
1a1f9f0871 8037043: put Method flag bits in predictable positions
Reviewed-by: kvn, coleenp
2014-03-11 14:54:47 -07:00
David Chase
a0bb00ac27 Merge 2014-03-11 10:59:26 -07:00
David Chase
13a70d932e 8028037: [parfait] warnings from b114 for hotspot.src.share.vm
Insert null check for one warning; other warning handled in parfait config

Reviewed-by: kvn
2014-03-11 13:38:32 -04:00
Nils Eliasson
f457cabe80 Merge 2014-03-11 11:26:14 -04:00
Igor Veresov
35f1475d20 8025644: java/util/stream/test/org/openjdk/tests/java/util/stream/ToArrayOpTest.java fails with TestData$OfRef): failure java.lang.AssertionError: expected [true] but found [false]
In GraphKit::gen_checkcast() provide only exact superklass to GraphKit::maybe_cast_profiled_receiver()

Reviewed-by: kvn, roland
2014-03-10 11:09:02 -07:00
Albert Noll
e8bc971d19 8029799: vm/mlvm/anonloader/stress/oome prints warning: CodeHeap: # of free blocks > 10000
Double CodeCacheSegmentSize from 64 byte to 128 bytes if tiered compilation is enabled

Reviewed-by: kvn, twisti
2014-03-07 07:42:40 +01:00
Volker Simonis
87b278c44c 8036777: AIX: Adapt implementation after '6546236: Thread interrupt() of Thread.sleep() can be lost on Solaris.'
Reviewed-by: kvn
2014-03-06 14:35:26 +01:00
Vladimir Kozlov
ee8db43354 Merge 2014-03-06 11:12:45 -08:00
Alexander Smundak
f90699ff16 8035647: PPC64: Support for elf v2 abi
ELFv2 ABI used by the little endian PowerPC64 on Linux.

Reviewed-by: kvn
2014-03-06 10:55:28 -08:00
Vladimir Ivanov
bd8255eaa4 8036667: "assert(adr->is_AddP() && adr->in(AddPNode::Offset)->is_Con()) failed: offset is a constant" with FoldStableValues on
Reviewed-by: kvn
2014-03-06 09:53:14 -08:00
Roland Westrelin
d5ff84f8b3 8032633: Enable type speculation by default
Enable type speculation

Reviewed-by: kvn
2014-03-06 11:11:04 +01:00
Mikael Gerdin
74235d9630 8038399: Remove dead oop_iterate MemRegion variants from SharedHeap, Generation and Space classes
Reviewed-by: tschatzl, stefank
2014-03-06 09:08:18 +01:00
Tao Mao
7a39c2c7d5 6521376: MaxTenuringThreshold and AlwayTenure/NeverTenure consistency
Adapt InitialTenuringThreshold and MaxTenuringThreshold according to AlwaysTenure/NeverTenure flag setting.

Reviewed-by: jmasa, tschatzl
2014-03-26 12:49:34 +01:00
Mikael Gerdin
547e8e4b75 8037958: ConcurrentMark::cleanup leaks BitMaps if VerifyDuringGC is enabled
Allocate temporary BitMaps in the VMThread's resource area

Reviewed-by: stefank, sjohanss
2014-03-26 10:54:52 +01:00
Erik Helin
63db52b7ed Merge 2014-03-24 11:25:32 +01:00
Stefan Karlsson
8159b86e35 8037952: Remove code duplication in Metaspace::deallocate
Reviewed-by: tschatzl, pliden, coleenp
2014-03-20 15:03:18 +01:00
Vladimir Kozlov
533560cb3e 8035983: Fix "Native frames:" in crash report (hs_err file)
Check fr.sender_sp() in java thread instead of os::is_first_C_frame(&fr).

Reviewed-by: twisti, coleenp
2014-03-05 16:21:22 -08:00
Mikhailo Seledtsov
eedf369513 8033990: Add message to verbose output to indicate when JVM was unable to use shared archive (with -Xshare:auto)
Added message to indicate when sharing was attempted but failed

Reviewed-by: coleenp, ctornqvi
2014-03-05 12:31:09 -05:00
Jon Masamitsu
8c7d064ee8 7098155: Resize young gen at full collections for UseParallelGC
Reviewed-by: tschatzl
2014-03-05 07:34:35 -08:00
Roland Westrelin
7bee30f699 8036146: make CPP interpreter build again
Fix build of CPP interpreter on x86 and sparc

Reviewed-by: kvn
2014-03-05 15:14:25 +01:00
Roland Westrelin
7f243a6751 Merge 2014-03-05 02:41:57 -08:00
Albert Noll
a09c80205a Merge 2014-03-05 01:26:52 -08:00
Albert Noll
9e39a2797d 8036091: compiler/membars/DekkerTest.java fails with -XX:CICompilerCount=1
Start test with -XX:-TieredCompilation so that one compiler thread works

Reviewed-by: kvn, twisti
2014-03-05 10:20:30 +01:00
Roland Westrelin
38fd717c30 8035841: assert(dp_src->tag() == dp_dst->tag()) failed: should be same tags 1 != 0 at ciMethodData.cpp:90
Concurrent update of traps with construction of ciMethodData

Reviewed-by: kvn, twisti
2014-03-05 09:29:12 +01:00
Mario Torre
694a2d010b 8036619: Shark: add LLVM 3.4 support
Reviewed-by: twisti
2014-03-04 18:52:06 -08:00
Vladimir Ivanov
fc6e8666a1 8036100: Default method returns true for a while, and then returns false
Reviewed-by: kvn, jrose
2014-03-04 02:33:10 -08:00
Vladimir Ivanov
1dbe60a475 8025842: Convert warning("Thread holding lock at safepoint that vm can block on") to fatal(...)
Reviewed-by: iveresov, roland, coleenp
2014-03-04 02:23:16 -08:00
Vladimir Ivanov
3ba019c8b2 8035828: Turn on @Stable support in VM
Reviewed-by: jrose, twisti
2014-03-04 02:20:41 -08:00
Vladimir Ivanov
132fd335eb 8035887: VM crashes trying to force inlining the recursive call
Reviewed-by: kvn, twisti
2014-03-04 02:19:04 -08:00
Coleen Phillimore
1a95f3a409 8035735: Metaspace::contains become extremely slow in some cases
Call is_metadata instead which does less work for the call in debugInfo.hpp which is called for all compiled code stack frames.

Reviewed-by: jmasa, dcubed
2014-03-03 13:58:52 -05:00
Aleksey Shipilev
1d10b6813e 8031818: Experimental VM flag for enforcing safe object construction
-XX:+AlwaysSafeConstructors to unconditionally emit the trailing constructor barrier.

Reviewed-by: kvn, roland
2014-03-03 15:31:27 +04:00
Aleksey Shipilev
c4bd0f58d3 8033380: Experimental VM flag to enforce access atomicity
-XX:+AlwaysAtomicAccesses to unconditionally enforce the access atomicity.

Reviewed-by: roland, kvn, iveresov
2014-03-03 15:54:45 +04:00
Goetz Lindenmaier
4b9933a012 8036122: Fix warning 'format not a string literal'
Reviewed-by: mduigou, kvn
2014-03-03 11:54:35 +01:00
Coleen Phillimore
e8d4b7aee3 8036547: test/runtime/CompressedOops/CompressedClassPointers.java fails with product build since -XX:+PrintMiscellaneous is a debug only flag
Use PrintCompressedOopsMode and these other flags that match printing compressed oop information

Reviewed-by: ctornqvi, sla
2014-03-04 09:57:16 -05:00
Dmitry Samersoff
4482a30c61 8036102: part of the fix for 6498581 lost in mismerge
Restore code lost in mis-merge

Reviewed-by: dcubed
2014-03-01 09:56:15 -08:00
Serguei Spitsyn
791b5d2b0d 6471769: Error: assert(_cur_stack_depth == count_frames(),"cur_stack_depth out of sync")
It is more safe to get/update data for suspended threads at a safepoint

Reviewed-by: dcubed, twisti, dholmes
2014-03-01 08:05:55 -08:00
Dmitry Samersoff
e1998b8813 Merge 2014-03-01 01:36:48 -08:00
Morris Meyer
c696dd6700 Merge 2014-02-28 08:02:20 -08:00
Jesper Wilhelmsson
1e1ad7f132 8036025: Sort the freelist in order to shrink the heap
The free list is being maintained in a sorted fashion and old and humongous regions are allocated from the bottom of the heap while young regions are allocated at the top.

Co-authored-by: Staffan Friberg <staffan.friberg@oracle.com>
Reviewed-by: tschatzl, mgerdin
2014-02-28 15:27:09 +01:00
Erik Helin
853fffb2cb 8036703: Add trace event with statistics for the metaspace chunk free lists
Reviewed-by: stefank, mgerdin, coleenp, egahlin
2014-03-18 09:03:28 +01:00
Erik Helin
0a79ba6680 8036701: Add trace event when a metaspace throws out of memory error
Reviewed-by: stefank, mgerdin
2014-03-18 08:00:21 +01:00
Erik Helin
b533eca89d 8036699: Add trace event when a metaspace allocation fails
Reviewed-by: jmasa, stefank
2014-03-18 07:00:06 +01:00
Bengt Rutisson
ddce6492be 8037495: Remove platform specific specification of SurvivorRatio for BSD
Reviewed-by: mgerdin, stefank
2014-03-18 06:15:45 +01:00
Erik Helin
51584519f4 8036698: Add trace event for updates to metaspace gc threshold
Reviewed-by: stefank, mgerdin
2014-03-17 20:59:19 +01:00
Erik Helin
1fb0683664 8036696: Add metaspace gc threshold to metaspace summary trace event
Reviewed-by: jmasa, stefank, mgerdin
2014-03-17 17:31:46 +01:00
Per Lidén
731ef44b87 8036673: G1: Abort weak reference processing if mark stack overflows
Reviewed-by: brutisso, tschatzl
2014-03-17 15:18:45 +01:00
Per Lidén
d75f47a49d 8036672: G1: alloc_purpose in copy_to_survivor_space() used incorrectly
Reviewed-by: brutisso, tschatzl
2014-03-17 15:18:38 +01:00
Erik Helin
616b86635d Merge 2014-03-17 15:12:33 +01:00
Erik Helin
c45adf1dca Merge 2014-03-17 14:54:12 +01:00
Bengt Rutisson
13792b1aa7 8037407: G1: Remove heapRegionSets.cpp
Reviewed-by: tschatzl, pliden
2014-03-17 13:42:16 +01:00
Thomas Schatzl
a07b2194f7 8036860: Pad and cache-align the BiasedMappedArray
Pad and cache-align BiasedMappedArray instances by default to avoid performance variability problems due to false sharing, as instances of this data structures are typically used for performance sensitive code.

Reviewed-by: brutisso, stefank
2014-03-17 13:07:55 +01:00
Thomas Schatzl
483ea400a5 8035330: Remove G1ParScanPartialArrayClosure and G1ParScanHeapEvacClosure
Mentioned closures are actually wrapped methods. This adds confusion to readers, and in this case also increases code size as G1ParScanHeapEvacClosure is part of the oop_oop_iterate() methods. Move them into G1ParScanThreadState as methods.

Reviewed-by: stefank
2014-03-17 10:07:51 +01:00
Thomas Schatzl
375e6df9ee 8034868: Extract G1 From Card Cache into separate class
Refactor the From Card Cache into a separate class.

Reviewed-by: jmasa
2014-03-17 10:13:55 +01:00
Thomas Schatzl
2a8616c9d6 8035654: Add times for evacuation failure handling in "Other" time
Detailed breakdown of time spent in the evacuation failure handling phases to make the "Other" time roughly correspond to the sum of its parts.

Reviewed-by: jwilhelm, jmasa
2014-03-17 10:13:42 +01:00
Thomas Schatzl
80188ce0b2 8035398: Add card redirty time in "Other" time in G1
Show the time taken by card redirtying during GC in a new "Redirty Cards" line.

Reviewed-by: jwilhelm, brutisso
2014-03-17 10:13:27 +01:00
Thomas Schatzl
d3e28ca682 8027295: Free CSet takes ~50% of young pause time
Improve fast card cache iteration and avoid taking locks when freeing the collection set.

Reviewed-by: brutisso
2014-03-17 10:13:18 +01:00
Thomas Schatzl
cde8aa670b 8035815: Cache-align and pad the from card cache
The from card cache is a very frequently accessed data structure. It is essentially a 2d array of per-region values, one row of values for every GC thread. Pad and align the data structure to avoid false sharing.

Reviewed-by: stefank
2014-03-17 10:12:47 +01:00
Thomas Schatzl
329e55e7b0 8035406: Improve data structure for Code Cache remembered sets
Change the code cache remembered sets data structure from a GrowableArray to a chunked list of nmethods. This makes the data structure more amenable to parallelization, and decreases freeing time.

Reviewed-by: mgerdin, brutisso
2014-03-17 10:12:21 +01:00
Bengt Rutisson
c88e3def4d 8034079: G1: Refactor the HeapRegionSet hierarchy
Reviewed-by: tschatzl, pliden
2014-03-14 10:15:46 +01:00
Erik Helin
000c4d9734 Merge 2014-02-28 14:56:04 +01:00
Roland Westrelin
227129c4d9 8031754: Type speculation should favor profile data from outermost inlined method
Favor profile data coming from outer most method

Reviewed-by: kvn, twisti
2014-02-28 13:44:16 +01:00
Ivan Gerasimov
9bb0f46d00 8035893: JVM_GetVersionInfo fails to zero structure
Reviewed-by: sla, zgu
2014-02-28 16:00:40 +04:00
Goetz Lindenmaier
74db1cc753 8035970: PPC64: fix ad file after 8027754: Enable loop optimizations for loops with MathExact
Reviewed-by: kvn
2014-02-27 20:40:24 +01:00
Stefan Karlsson
959bdfb211 8035746: Add missing Klass::oop_is_instanceClassLoader() function
Reviewed-by: mgerdin, coleenp
2014-02-27 10:36:50 +01:00
Stefan Karlsson
ba2326e19f 8035648: Don't use Handle in java_lang_String::print
Reviewed-by: coleenp, pliden
2014-02-27 10:34:55 +01:00
Roland Westrelin
58c97205d0 8032011: nsk/stress/jck60/jck60022 crashes in src\share\vm\runtime\synchronizer.cpp:239
Biased locking's revoke_bias locks monitor in compiled frame with eliminated lock

Reviewed-by: kvn, iveresov
2014-02-27 09:37:16 +01:00
Igor Veresov
2c99a4ef9f 8035283: Second phase of branch shortening doesn't account for loop alignment
Added missing check for loop padding case.

Reviewed-by: kvn, jrose
2014-02-26 16:45:15 -08:00
Yumin Qi
bfb1c42657 6498581: ThreadInterruptTest3 produces wrong output on Windows
There is race condition between os::interrupt and os::is_interrupted on Windows. In JVM_Sleep(Thread.sleep), check if thread gets interrupted, it may see interrupted but not really interrupted so cause spurious waking up (early return from sleep). Fix by checking if interrupt event really gets set thus prevent false return. For intrinsic of _isInterrupted, on Windows, go fastpath only on bit not set.

Co-authored-by: David Holmes <david.holmes@oracle.com>
Reviewed-by: acorn, kvn
2014-02-26 15:20:41 -08:00
Goetz Lindenmaier
c01a8b9263 8035396: Introduce accessor for tmp_oop in frame
Avoid #ifs by introducing the accessor function interpreter_frame_temp_oop_addr().

Reviewed-by: kvn, twisti
2014-02-26 11:33:34 -08:00
Staffan Larsen
e1e850a132 8035150: ShouldNotReachHere() in ConstantPool::copy_entry_to
Reviewed-by: dcubed, mgronlun
2014-02-26 15:47:44 +01:00
Jesper Wilhelmsson
ead6152f73 8035822: Unable to test minimalVM
Moved the test code inside INCLUDE_ALL_GCS

Reviewed-by: dholmes, stefank
2014-02-26 14:52:42 +01:00
Albert Noll
6dcf058035 Merge 2014-02-26 02:54:49 -08:00
Albert Noll
1258452546 Merge 2014-02-26 02:38:46 -08:00
Albert Noll
aa570e227c 8034839: jvm hangs with gc/gctests/LoadUnloadGC test
Provide fast lookup of checked dependencies via hashmap

Reviewed-by: kvn, roland
2014-02-26 11:29:47 +01:00
Niclas Adlertz
94a86285a7 8010500: [parfait] Possible null pointer dereference at hotspot/src/share/vm/opto/loopnode.hpp
Added NULL check for loopnode() in get_pre_loop_end()

Reviewed-by: kvn, roland
2014-02-26 07:46:46 +01:00
Roland Westrelin
84c68fc78a Merge 2014-02-25 10:42:25 -08:00
Roland Westrelin
493557fc90 8031752: Failed speculative optimizations should be reattempted when root of compilation is different
Support for speculative traps that keep track of the root of the compilation in which a trap occurs.

Reviewed-by: kvn, twisti
2014-02-25 18:16:24 +01:00
Niclas Adlertz
5d4b624caf 8033260: assert(lrg._area >= 0.0) failed: negative spill area
Change type from float to double on block frequency, and add check for +Inf - +Inf operation

Reviewed-by: kvn, roland
2014-02-25 17:51:27 +01:00
Niclas Adlertz
532b570e81 8032656: Tag the MachSpillCopies with purpose information
Subclassed the MachSpillCopyNode with different subnodes for different spill purposes to enhance debugging / visualization

Reviewed-by: kvn, roland
2014-02-25 14:09:02 +01:00
Albert Noll
a609fe84bb 8034775: Failing to initialize VM when running with negative value for -XX:CICompilerCount
Ensure appropriate min. number of compiler threads (1 for non-tiered, and 2 for tiered)

Reviewed-by: kvn
2014-02-25 13:52:37 +01:00
Erik Helin
a45b9ead44 Merge 2014-02-25 11:02:11 +01:00
Niclas Adlertz
e3931e81eb 8032894: Remove dead code in Pressure::lower
Remove dead code in Pressure::lower

Reviewed-by: kvn, roland
2014-02-25 10:26:21 +01:00
Thomas Schatzl
7de1730b10 8034948: Back out JDK-6976350 since it does not fix any issue
Revert JDK-6976350 because it does not improve PLAB fragmentation. To the contrary, it tends to increase the amount of wasted space with many threads.

Reviewed-by: brutisso
2014-02-24 10:45:15 +01:00
Jaroslav Bachorik
2b75897176 4505697: nsk/jdi/ExceptionEvent/_itself_/exevent006 and exevent008 tests fail with InvocationTargetException
Reviewed-by: dcubed, dholmes, sspitsyn
2014-02-24 10:28:22 +01:00
Thomas Schatzl
2ae60596ed 8035329: Move G1ParCopyClosure::copy_to_survivor_space into G1ParScanThreadState
Move G1ParCopyClosure::copy_to_survivor_space to decrease code size.

Reviewed-by: stefank, jmasa
2014-02-24 09:41:04 +01:00
Thomas Schatzl
dbc8581147 8035326: Assume non-NULL references in G1CollectedHeap::in_cset_fast_test
Remove the assumption that G1CollectedHeap::in_cset_fast_test needs to check for NULL references. Most of the time this is not required, making the code doing this check multiple times.

Reviewed-by: stefank, mgerdin, jmasa
2014-02-24 09:40:49 +01:00
Thomas Schatzl
6c588725c1 8027559: Decrease code size and templatizing in G1ParCopyClosure::do_oop_work
Move methods that are not dependent on any of G1ParCopyClosure's template parameters into G1ParCopyHelper. Further remove unused methods and members of the class hierarchy.

Reviewed-by: mgerdin, stefank
2014-02-24 09:40:21 +01:00
Axel Siebenborn
cdc5c0c966 8034867: Object references from expression stack are not visible as roots via jvmti FollowReferences and HeapDump
The heap walking is inconsistent without following references from expression stack, so need to fix it

Reviewed-by: coleenp, sspitsyn
2014-02-23 22:36:19 -08:00
Harold Seigel
b2c117b170 Merge 2014-02-23 13:16:03 -05:00
Markus Grönlund
68857c9469 8035493: JVMTI PopFrame capability must instruct compilers not to prune locals
Reviewed-by: kvn, sla, coleenp, sspitsyn
2014-02-22 10:22:05 +01:00
Stefan Karlsson
a235c50791 8035412: Cleanup ClassLoaderData::is_alive
Reviewed-by: coleenp, mgerdin
2014-02-21 10:19:09 +01:00
Stefan Karlsson
4248787654 8035393: Use CLDClosure instead of CLDToOopClosure in frame::oops_interpreted_do
Reviewed-by: tschatzl, coleenp
2014-02-21 10:01:20 +01:00
Erik Helin
7b6d31b4a5 Merge 2014-02-21 10:00:46 +01:00
Stefan Johansson
90d8f00199 8035057: NewSize ergonomics wrong when setting small or unaligned size on command line
Making sure that if NewSize is set on the command line it should be used for both min and initial size even if it is re-aligned.

Reviewed-by: jwilhelm, jmasa
2014-02-21 09:48:52 +01:00
Vladimir Kozlov
4200d0d095 Merge 2014-02-20 12:20:56 -08:00
Volker Simonis
05eda55e3c 8035423: AIX: Fix os::get_default_process_handle() in os_aix.cpp after 8031968
Reviewed-by: kvn
2014-02-20 14:44:33 +01:00
Goetz Lindenmaier
a5520f1c94 8035394: PPC64: Make usage of intrinsic dsqrt depend on processor recognition
Reviewed-by: kvn
2014-02-20 11:05:12 +01:00
Axel Siebenborn
b0422f5f50 8035392: cppInterpreter: fix message of NPE
Reviewed-by: kvn
2014-02-20 10:48:57 +01:00
Goetz Lindenmaier
683ea742f2 8034797: AIX: Fix os::naked_short_sleep() in os_aix.cpp after 8028280
Imlements os::naked_short_sleep(jlong ms) on AIX

Reviewed-by: dholmes, kvn
2014-02-19 14:03:09 -08:00
Vladimir Kozlov
5117e1a805 Merge 2014-02-19 12:08:49 -08:00
Frederic Parain
eff08434da 6546236: Thread interrupt() of Thread.sleep() can be lost on Solaris due to race with signal handler
Reviewed-by: dholmes, dcubed
2014-02-19 16:22:15 +00:00
Coleen Phillimore
a9868648e6 7014526: "java -version" crash on sparc with some values of HeapBaseMinAddress
Make default HeapBaseMinAddress the minimum that can be specified.

Reviewed-by: minqi, kvn, tschatzl, dholmes
2014-02-19 02:58:13 +00:00
Serguei Spitsyn
95cdf53e75 8034249: need more workarounds for suspend equivalent condition issue
Collect data at safepoint, do not rely on thread suspension

Reviewed-by: dcubed, dholmes
2014-02-18 06:19:49 -08:00
Staffan Larsen
43b711ea78 8034080: Remove the USDT1 dtrace code from Hotspot
Reviewed-by: dholmes, coleenp
2014-02-18 09:15:40 +01:00
Stefan Johansson
10d4420b08 8033440: jmap reports unexpected used/free size of concurrent mark-sweep generation
SA used the wrong type for the indexedFreeList in CompactibleFreeListSpace.

Reviewed-by: coleenp, dsamersoff
2014-02-17 09:51:37 +01:00
Erik Helin
83a8157179 Merge 2014-02-17 10:13:28 +01:00
Harold Seigel
b4be5da833 Merge 2014-02-15 14:41:04 -05:00
Coleen Phillimore
4ab0b2732c 8027146: Class loading verification failure if GC occurs in Universe::flush_dependents_on
Remove search in system dictionary and hacks, replace with verifying in CLD::_klasses list.

Reviewed-by: dcubed, acorn
2014-02-15 13:03:38 -05:00
Calvin Cheung
297485c528 8034860: Fatal error due to incorrect thread state during nightly testing
Use the HAS_PENDING_EXCEPTION and CLEAR_PENDING_EXCEPTION macros

Reviewed-by: dholmes, coleenp, dcubed
2014-02-14 09:50:17 -08:00
Erik Helin
c5ef624e7c Merge 2014-02-13 17:57:27 +01:00
Stefan Johansson
b1cfdfafe2 8028498: runtime/SharedArchiveFile/CdsDifferentObjectAlignment.java asserts in RT_Baseline
Preventing GCs to occur before VM is completely initialized. This was previously partly done by one part of the GC locker which not was removed.

Reviewed-by: coleenp, pliden
2014-02-13 10:05:03 +01:00
Stefan Karlsson
a8f01c3f99 8038630: Remove ExtendedOopClosure::prefetch_style()
Reviewed-by: coleenp, jmasa
2014-03-28 14:15:03 +01:00
Stefan Karlsson
f2de069dc2 8038628: Remove unused Closure::abort()
Reviewed-by: coleenp, jmasa
2014-03-28 14:03:11 +01:00
Mikael Gerdin
1fdc7cd78f 8038405: Clean up some virtual fucntions in Space class hierarchy
Get rid of some duplicated implementations and change nonsense implementations to pure virtuals

Reviewed-by: stefank, jmasa
2014-03-12 15:25:35 +01:00
Mikael Gerdin
c62c16f94a 8038412: Move object_iterate_careful down from Space to ContigousSpace and CFLSpace
Only declare the functions where they are actually needed.

Reviewed-by: tschatzl, stefank
2014-03-12 17:13:48 +01:00
Mikael Gerdin
e72dd1b433 8038404: Move object_iterate_mem from Space to CMS since it is only ever used by CMS
Reviewed-by: brutisso, tschatzl, stefank
2014-03-12 15:22:45 +01:00
Calvin Cheung
50eeace70b Merge 2014-02-12 12:09:22 -08:00
Calvin Cheung
afe8f1c904 8028785: [parfait] warnings from b116 for hotspot.src.share.vm.prims: JNI exception pending
Added JNI exception pending check in several files under src/share/vm/prims directory

Reviewed-by: coleenp, minqi
2014-02-12 12:01:45 -08:00
Mike Duigou
b633a889a7 8030350: Enable additional compiler warnings for GCC
Reviewed-by: dholmes, coleenp, erikj, tbell, ihse
2014-02-12 09:37:18 -08:00
Henry Jen
a752b0b503 8033215: clang: node.cpp:284 IDX_INIT macro use uninitialized field _out
Reviewed-by: twisti, kvn
2014-02-11 21:32:19 -08:00
Ioi Lam
d0baa9304f Merge 2014-02-11 10:05:02 -08:00
Ioi Lam
7f138c5502 7182040: volano29 limited by os resource on Linux - need better diagnostic message
Changed message to "unable to create native thread: possibly out of memory or process/resource limits reached"

Reviewed-by: dholmes, sla
2014-02-11 08:43:17 -08:00
Nils Eliasson
cde5c5862b 8034188: OSR methods may not be recompiled at proper compilation level
Remove_osr_nmethod doesn't check that it is the correct method

Reviewed-by: kvn, iveresov
2014-02-11 13:29:53 +01:00
Matthias Baesken
2b8f41202a 8034171: Remove use of template template parameters from binaryTreeDictionary
Reviewed-by: mgerdin, jmasa
2014-02-11 09:34:50 +01:00
Stefan Karlsson
2a5c51998d 8034764: Use process_strong_roots to adjust the StringTable
Reviewed-by: tschatzl, brutisso
2014-02-14 09:29:56 +01:00
Stefan Karlsson
2a866afcdb 8034761: Remove the do_code_roots parameter from process_strong_roots
Reviewed-by: tschatzl, mgerdin, jmasa
2014-02-13 17:44:39 +01:00
Yumin Qi
a90e842e0c 8033792: AltHashing used jint for imprecise bit shifting
AltHashing used jint the way of juint in bit shifting which could lead loss of precision. Fix  by change _seed defined as juint.

Reviewed-by: coleenp, ccheung
2014-02-10 21:29:14 -08:00
Daniel D. Daugherty
cf5c3370a3 8028073: race condition in ObjectMonitor implementation causing deadlocks
Move redo of ParkEvent.unpark() after JVMTI_EVENT_MONITOR_WAITED event handler is called.

Reviewed-by: dholmes, sspitsyn, dice, acorn
2014-02-10 12:48:54 -08:00
Christian Tornqvist
dd25d6fed0 8016644: Improve UnsupportedClassVersionError message
Improved the UnsupportedClassVersionError message to hopefully be more user friendly

Reviewed-by: coleenp, dholmes, twisti
2014-02-10 17:49:17 +01:00
Coleen Phillimore
2759eb10ae 8033528: assert(0 <= i && i < length()) failed: index out of bounds
Restoring bytecodes for invokedynamic had wrong index calculation added testing stress option.

Reviewed-by: twisti, hseigel
2014-02-07 18:30:27 -05:00
Gerald Thornbrugh
3d76a6654e 8033931: Several nightly tests failing with assert(imin < imax) failed: Unexpected page size
Loosen new assert() in get_stack_commited_bottom()

Reviewed-by: dcubed, coleenp, dsamersoff, hseigel
2014-02-07 11:47:24 -08:00
Bill Pittore
b6c95dcb56 Merge 2014-02-07 14:47:04 -05:00
Oleg Mazurov
50b13833fa 8025841: JVMTI: "vtable stub" dynamic code notification is misplaced
Generate correct "vtable stub" dynamic code notifications

Reviewed-by: sspitsyn, kvn, coleenp
2014-02-06 20:13:38 -08:00
Coleen Phillimore
f23cf29e0f Merge 2014-02-06 20:32:08 +00:00
Gerald Thornbrugh
d3a85e73a7 8029775: Solaris code cleanup
8033464: Linux code cleanup

Cleaned up warnings in solaris and linux specific os code.

Reviewed-by: coleenp, fparain, dcubed
2014-02-06 14:28:35 -05:00
Frederic Parain
41edfa7107 8030808: dtrace/hotspot/Monitors/Monitors001 fails in product builds on solaris-sparc
Reviewed-by: sspitsyn, dcubed, kamg, dholmes
2014-02-06 17:59:35 +00:00
Henry Jen
aae536aad7 8033289: clang: clean up unused function warning
Reviewed-by: coleenp, dholmes, mgerdin
2014-02-05 21:24:29 -08:00
Calvin Cheung
a3c78aac2f 8032010: Attempt to resolve abstract method in concrete class fails with AbstractMethodError
Removing a check in LinkResolver::resolve_method() to conform with a change in JVMS-8 5.4.3.3. Method Resolution

Reviewed-by: coleenp, lfoltan
2014-02-05 15:14:47 -08:00
Stefan Johansson
05e4dd3c74 8033426: Scale initial NewSize using NewRatio if not set on command line
Now using NewRatio to size initial NewSize if not specified on commandline.

Reviewed-by: jmasa, jwilhelm
2014-02-05 11:05:13 +01:00
Serguei Spitsyn
465cfd7c01 8032223: nsk/regression/b4663146 gets assert(SafepointSynchronize::is_at_safepoint() || JvmtiEnv::is_thread_fully_suspended(get_thread(), false, &debug_bits))
It is better to calculate frame count for suspended threads at a safepoint

Reviewed-by: twisti, dsamersoff, sla, dholmes, dcubed
2014-02-04 19:41:46 -08:00
Staffan Larsen
731320a7fd 8033126: Can't call default methods from JNI
Reviewed-by: dholmes, acorn, kamg
2014-02-03 15:24:20 +01:00
Staffan Larsen
eaac73cf84 8032462: Change the linux SDT implementation to use USDT2 instead of USDT1
Reviewed-by: coleenp, sspitsyn, kamg
2014-02-03 13:41:26 +01:00
Harold Seigel
f8cf8b295d Merge 2014-02-02 15:31:40 -05:00
Jesper Wilhelmsson
4dde43fa62 8023899: Typo in TraceCPUTime message
Removed the comma

Reviewed-by: pliden, tschatzl
2014-01-31 13:38:01 +01:00
Ron Durbin
97d55c801e 8027113: decouple the '-XXaltjvm=<path>' option from the gamma launcher
Decoupled the '-XXaltjvm=<path>' option from the gamma launcher.  Clearing the way for removing the remaining cruft associated with the previously removed gamma launcher.

Reviewed-by: dcubed, dholmes
2014-01-30 14:12:22 -08:00
Goetz Lindenmaier
4c4b46e490 8033168: PPC64: gcc 4.8 warning in output_c.cpp
Fix warnings

Reviewed-by: kvn
2014-01-30 14:30:01 +01:00
Erik Helin
4b802a6d31 Merge 2014-01-30 14:01:45 +01:00
Harold Seigel
b7100718e8 Merge 2014-01-29 19:54:44 -05:00
Jesper Wilhelmsson
5301534dc3 8028391: Make the Min/MaxHeapFreeRatio flags manageable
Made the flags Min- and MaxHeapFreeRatio manageable, and implemented support for these flags in ParallalGC.

Reviewed-by: sla, mgerdin, brutisso
2014-01-29 23:17:05 +01:00
Goetz Lindenmaier
70737b100f 8033117: PPC64: Adapt to 8002074: Support for AES on SPARC
Implement missing function Matcher::pass_original_key_for_aes() in ppc64 ad file.

Reviewed-by: kvn
2014-01-29 12:22:13 +01:00
Vladimir Kozlov
7d92dc4d79 Merge 2014-01-28 12:28:17 -08:00
Vladimir Kozlov
c3a0e80e0b Merge 2014-01-28 12:25:34 -08:00
Zhengyu Gu
ebdf7e0fa8 Merge 2014-01-28 06:26:36 -08:00
Albert Noll
7722b3d097 8035946: Use ResourceHashtable for dependency checking
Use ResourceHashtable for dependency checking and delete GenericHashtable

Reviewed-by: kvn, coleenp
2014-03-03 08:04:14 +01:00
Zhengyu Gu
673e8b47c0 8032827: NMT: missing virtual memory tagging in os::workaround_expand_exec_shield_cs_limit()
Fixed missing virtual memory type tagging in os::workaround_expand_exec_shield_cs_limit() function

Reviewed-by: hseigel, coleenp
2014-01-28 08:55:00 -05:00
Coleen Phillimore
305d2f27f1 8028275: Metaspace ShrinkGrowTest causes fatal error if run with JFR
Clean up initialization from Threads::create_vm() so that exceptions cause vm_exit_during_initialzation without an exception mark.

Reviewed-by: dholmes, hseigel
2014-01-27 23:12:13 -05:00
Vladimir Kozlov
a354960abb 8032566: Crash in JIT when running Scala compiler (and compiling Scala std lib)
Switch off EliminateAutoBox flag by default in jdk8 release.

Reviewed-by: iveresov
2014-01-27 10:20:51 -08:00
Vladimir Kozlov
6e8540ca72 Merge 2014-01-24 09:04:24 -08:00
Harold Seigel
30bac4bcc7 Merge 2014-01-24 08:31:06 -05:00
Harold Seigel
39f19c2f76 8028553: The JVM should not throw VerifyError when 'overriding' a static final method in a superclass
Check if method is static before throwing exception.

Reviewed-by: kamg, coleenp, lfoltan, fparain
2014-01-24 08:13:42 -05:00
Niclas Adlertz
970a35292b 8031498: Cleanup and re-factorize PhaseChaitin::build_ifg_physical
Created sub-functions, added data structures, improved naming and removed unnecessary code

Reviewed-by: kvn, roland, rbackman
2014-01-24 13:06:52 +01:00
Vladimir Kozlov
e42f245870 Merge 2014-01-24 13:30:55 -08:00
Aleksey Shipilev
fbff3b73a4 8032490: Remove -XX:+-UseOldInlining
Move the option to obsolete options list, purge the redundant compiler code.

Reviewed-by: kvn, jrose
2014-01-24 15:26:56 +04:00
Goetz Lindenmaier
6eddc19daf 8032634: Add #ifdef PPC64 around OrderAccess operations on _thread_state
Reviewed-by: dholmes, kvn
2014-01-24 10:23:34 +01:00
Roland Westrelin
c19a7e0fa3 8027422: assert(_gvn.type(obj)->higher_equal(tjp)) failed: cast_up is no longer needed
Type methods shouldn't always operate on speculative part

Reviewed-by: kvn, twisti
2014-01-24 09:31:53 +01:00
David Simms
edb5dd324e 8028280: ParkEvent leak when running modified runThese which only loads classes
Use spin lock to manage ParkEvent and PlatformEvent free lists.

Reviewed-by: dholmes, fparain
2014-01-24 09:28:47 +01:00
Gilles Duboscq
90a44b778d 8031427: AllocObject and Unsafe.allocateInstance segfault for primitive types
The fix just throws an InstantiationException if the Klass is NULL.

Reviewed-by: coleenp, twisti, jrose
2014-01-23 16:02:14 -05:00
Alejandro Murillo
4c4881a31f Merge 2014-01-23 10:35:38 -08:00
Yumin Qi
38fe1c531a Merge 2014-01-23 09:45:38 -08:00
Yumin Qi
4a3aa3a77a 6651256: jstack: DeleteGlobalRef method call doesn't lead to descreasing of global refs count shown by jstack
Jni_DeleteGlobalRef does not really release the jni handle, instead, set the handle point to JNIHandles::_deleted_handle which holds an oop instance (java/lang/Object) in Java heap and never be GC'ed. When counting number of global reference, it counts all the handles on the chain list, which includes the already deleted ones.

Reviewed-by: zgu, sla, coleenp
2014-01-23 09:40:32 -08:00
Rickard Bäckman
0b85ee832e 8027754: Enable loop optimizations for loops with MathExact inside
Reviewed-by: kvn, iveresov
2014-01-23 12:08:28 +01:00
Vladimir Kozlov
e2fecea88e 8033805: Move Fast_Lock/Fast_Unlock code from .ad files to macroassembler
Consolidated C2 x86 locking code in one place in macroAssembler_x86.cpp.

Reviewed-by: roland
2014-02-24 15:12:26 -08:00
Staffan Larsen
6f46c5c2f0 8031968: Mac OS X: VM starts the agent by calling both Agent_OnAttach and Agent_OnAttach_L functions if its agent library is dynamically linked
Make sure we only look for statically linked agents in the main process image

Reviewed-by: dsamersoff, bpittore, dcubed
2014-01-23 09:06:21 +01:00
Staffan Larsen
869722e816 8032250: Add trace event for VM flag changes
Reviewed-by: coleenp, ehelin, egahlin, mgronlun
2014-01-23 08:12:12 +01:00
Vladimir Ivanov
91573b8695 8031695: CHA ignores default methods during analysis leading to incorrect code generation
Reviewed-by: jrose, acorn, hseigel, lfoltan
2014-01-23 01:23:23 +04:00
Igor Veresov
0c43978be6 8031743: C2: loadI2L_immI broken for negative memory values
Restrict loadI2L_imm optimizations to positive values of mask

Reviewed-by: kvn, dlong
2014-01-21 20:05:28 -08:00
Harold Seigel
9aea544943 Merge 2014-01-19 20:23:46 -05:00
Igor Veresov
2275de8d6b 8032207: C2: assert(VerifyOops || MachNode::size(ra_) <= (3+1)*4) failed: bad fixed size
Fix the sizing of loadUS2L_immI16 and loadI2L_immI

Reviewed-by: kvn, azeemj
2014-01-17 18:09:08 -08:00
Morris Meyer
92d751996e Merge 2014-01-17 10:43:43 -08:00
Harold Seigel
b1317dd946 Merge 2014-01-17 09:47:17 -05:00
Harold Seigel
fe0b2eae89 8031045: Access checks should precede additional per-instruction checks
Move access check above the check for non-static method

Reviewed-by: lfoltan, coleenp
2014-01-17 09:39:51 -05:00
Erik Helin
b70f686814 Merge 2014-01-17 09:40:04 +01:00
Christian Thalinger
d80bfaeb14 8022395: java.util.zip.ZipException: Not in GZIP format in JT_JDK/test/java/util/zip/GZIP tests
Reviewed-by: kvn, iveresov
2014-01-16 16:18:34 -08:00
Staffan Larsen
b35fb5f8c0 8030812: Change the solaris DTrace implementation to use USDT2 instead of USDT1
Reviewed-by: coleenp, sspitsyn, dsamersoff
2014-01-16 20:14:21 +01:00
Serguei Spitsyn
0aac4235b3 8030027: nsk/jvmti/scenarios/hotswap/HS101/hs101t006 Crashed the vm on Linux-amd64: SIGSEGV in JavaThread::last_java_vframe(RegisterMap*)+0xfa
Add a safe guard to VMOp_GetCurrentLocation against non-walkable stack of target thread exiting from Java execution

Reviewed-by: mgronlun, dholmes, sla, dcubed
2014-01-17 02:13:40 -08:00
Calvin Cheung
7f34fe7eee 8027314: Java should recognize Diagnostic options if -XX:+UnlockDiagnosticVMOptions is not specified and print an informative message
Clarifying the error messages associated with vm options of type diagnostic, experimental, develop, and notproduct

Reviewed-by: kvn, twisti, ctornqvi
2014-01-16 10:51:16 -08:00
Erik Helin
3cd01085cd 8031779: Assert in MetaspaceGC is always true
Reviewed-by: jmasa, jwilhelm
2014-01-16 17:22:35 +01:00
Martin Doerr
0306737032 8029101: PPC64 (part 211): ordering of Independent Reads of Independent Writes
Reviewed-by: dholmes, kvn
2014-01-16 14:25:51 +01:00
Jon Masamitsu
9d4f3dfd4f 8031290: Adjust call to getisax() for additional words returned
Reviewed-by: kvn, iveresov, twisti
2014-01-15 07:20:04 -08:00
Stefan Johansson
a23ee6de8d 8031686: G1: assert(_hrs.max_length() == _expansion_regions) failed
Using pointer_delta to avoid overflowing pointer calculation.

Reviewed-by: jmasa, tschatzl
2014-01-20 10:55:54 +01:00
Bengt Rutisson
9b29efeb63 8030177: G1: Enable TLAB resizing
Reviewed-by: tschatzl, stefank, jmasa
2014-01-27 13:14:53 +01:00
Jesper Wilhelmsson
81ba2e32c0 8025856: Fix typos in the GC code
Fix about 440 typos in comments in the VM code

Reviewed-by: mgerdin, tschatzl, coleenp, kmo, jcoomes
2014-01-23 14:47:23 +01:00
Albert Noll
1689dc7b05 Merge 2014-01-14 21:33:33 -08:00
Albert Noll
2f84f7d5fc 7194669: CodeCache::mark_for_deoptimization should avoid verifying dependencies multiple times
Avoid verifying dependencies multiple times by caching verified dependencies

Reviewed-by: kvn, twisti, roland
2014-01-15 06:16:55 +01:00
Shrinivas Joshi
d4c9d3889b 8002074: Support for AES on SPARC
Add intrinsics/stub routines support for single-block and multi-block (as used by Cipher Block Chaining mode) AES encryption and decryption operations on the SPARC platform.

Reviewed-by: kvn, roland
2014-01-14 17:46:48 -08:00
Harold Seigel
44a8bf65f3 8031059: invokestatic: ICCE trying to invoke static method when it clashes with an abstract method inherited from an interface
Do not create AME overpass if there is a matching static method

Reviewed-by: lfoltan, coleenp, kamg
2014-01-14 16:27:35 -05:00
Mikael Gerdin
4c7c3f0613 8032379: Remove the is_scavenging flag to process_strong_roots
Refactor the strong root processing to avoid using a boolean in addition to the ScanOption enum.

Reviewed-by: stefank, tschatzl, ehelin, jmasa
2014-01-14 16:40:33 +01:00
Stefan Johansson
8ce7c46ec7 8020277: Young GC could be extremely slow due to assertion in ObjectStartArray::object_starts_in_range
8009462: Young GC's (ParNewGC and SerialGC) have unexpected variances

Removed the assertion slowing down GC.

Reviewed-by: stefank, mgerdin
2014-01-20 12:56:18 +01:00
Erik Helin
ba54cfdf88 8031776: Remove the unnecessary enum GenRemSet::Name
Reviewed-by: stefank, tschatzl, jwilhelm
2014-01-20 17:15:55 +01:00
Thomas Schatzl
70fd1802a0 8027746: Remove do_gen_barrier template parameter in G1ParCopyClosure
Remove the above mentioned template parameter and related unused code. Also remove some classes that are never used.

Reviewed-by: stefank, mgerdin, jwilhelm
2014-01-20 11:47:53 +01:00
Thomas Schatzl
aeba3a8119 8027454: Do not traverse string table during G1 remark when treating them as strong roots during initial mark
Do not try to unlink string table entries unconditionally during remark. This is without side effects as the preceding initial mark always uses the string table as strong roots. Needs to be fixed with class unloading during concurrent mark.

Reviewed-by: brutisso, mgerdin
2014-01-20 11:47:29 +01:00
Thomas Schatzl
4bb3631855 8027476: Improve performance of Stringtable unlink
8027455: Improve symbol table scan times during gc pauses

Parallelize string table and symbol table scan during remark and full GC. Some additional statistics output if the experimental flag G1TraceStringSymbolTableScrubbing is set.

Reviewed-by: mgerdin, coleenp, brutisso
2014-01-20 11:47:07 +01:00
Roland Westrelin
b1c92a140b 8026253: New type profiling points: sparc support
C1 and interpreter support for new type profiling on sparc

Reviewed-by: kvn, twisti
2014-01-14 14:51:47 +01:00
Erik Helin
e962dec4b7 Merge 2014-01-14 14:26:43 +01:00
Roland Westrelin
bff5f5c875 8030662: "assert(counter_changed) failed: failed dependencies, but counter didn't change" still fails
Erroneously removed call to SystemDictionary::notice_modification() from jvmti with fix for 8029383

Reviewed-by: iveresov, twisti, kvn
2014-01-14 12:44:12 +01:00
Mikael Gerdin
927369db43 8028764: dtrace/hotspot_jni/ALL/ALL001 crashes the vm on Solaris-amd64, SIGSEGV in MarkSweep::follow_stack()+0x8a
C1 generates code to encode compressed oop into tmp register before runtime call for patching where GC may happen

Reviewed-by: iveresov, twisti, kvn
2014-01-14 09:44:45 +01:00
Roland Westrelin
14578d5ae9 8029464: assert(ft == ttkp->cast_to_ptr_type(jtkp->ptr()) || ft->isa_narrowoop()
Fix the assert check for narrow klass pointer.

Reviewed-by: twisti, kvn
2014-01-13 16:16:25 -08:00
Fredrik Arvidsson
6c1b243c0e 8031304: Add dcmd to print all loaded dynamic libraries
Adding VM.dynlibs as a dcmd to dump all loaded dynamic libraries.

Reviewed-by: sla, fparain, mgronlun, dsamersoff
2014-01-14 15:27:01 +01:00
Harold Seigel
f84476eec5 Merge 2014-01-13 18:30:57 -05:00
Morris Meyer
a665235538 Merge 2014-01-10 12:54:08 -08:00
David Simms
6005ba852d 8029858: Enhance array copies
Just read the source element once

Reviewed-by: coleenp, ahgross
2014-01-10 15:58:40 +01:00
Harold Seigel
9099e9ddcc 8034926: Attribute classes properly
Add check to prevent underflow

Reviewed-by: coleenp, ahgross
2014-02-20 13:11:23 -05:00
Per Lidén
ca035a4040 8029162: G1: Shared SATB queue never enabled
Reviewed-by: brutisso, mgerdin, tschatzl
2014-01-10 09:54:25 +01:00
Per Lidén
ce8f2a52fc 8029255: G1: Reference processing should not enqueue references on the shared SATB queue
Reviewed-by: brutisso, tschatzl
2014-01-10 09:53:53 +01:00
Albert Noll
42afc756f5 8022494: Make compilation IDs sequential
Use atomic operations to provide sequential compilation IDs

Reviewed-by: kvn, twisti
2014-01-10 06:36:18 +01:00
Christian Thalinger
0c84081c87 8026413: ScopeDesc::is_equal is declared in header file but not implemented
Reviewed-by: kvn
2014-01-09 18:09:59 -08:00
Zhengyu Gu
3d84ac9ef1 7012961: runtime/jni/WindowsExceptionFilter/WindowsExceptionFilter01 crashes on windows-amd64
VM needs to handle EXCEPTION_FLT_* exceptions on Win64

Reviewed-by: coleenp, ccheung
2014-01-09 14:06:53 -05:00
Erik Helin
c6faff2824 Merge 2014-01-09 16:53:51 +01:00
Igor Ignatyev
26ad8adaf4 8031115: intrinsics for Math.decrementExact(J) and incrementExact(J) don't work
Reviewed-by: kvn, twisti
2014-01-09 19:03:36 +04:00
Niclas Adlertz
f0e34eb09c 8011391: C1: assert(code_offset() - offset == NativeInstruction::nop_instruction_size) failed: only one instruction can go in a delay slot
Remove the VerifyOopMaps flag which doesn't work for tiered or for C1 with more compiler threads than one.

Reviewed-by: twisti, drchase, iveresov
2014-01-09 10:47:40 +01:00
Bill Pittore
ea35991cab 8027914: Client JVM silently exit with fail exit code when running in compact(1,2) with options -Dcom.sun.management and -XX:+ManagementServer
Check for sun.management.Agent class and print message and exit VM if not found at startup.

Reviewed-by: dholmes, mchung
2014-01-08 20:23:16 -05:00
Daniel D. Daugherty
1eed5c3f4d Merge 2014-01-08 13:53:24 -08:00
Vladimir Kozlov
ba7149bbda 8028468: Add inlining information into ciReplay
Allow dump and replay inlining for specified method during a program execution.

Reviewed-by: roland, twisti
2014-01-08 10:25:50 -08:00
Staffan Larsen
2352ce8d9c 8030184: Remove unneeded "content_type" declarations from tracetypes.xml
Reviewed-by: dholmes, jbachorik, egahlin, mgronlun
2014-01-08 13:20:33 +01:00
Niclas Adlertz
1defb28228 8029446: assert(_cfg.get_block_for_node(proj) == borig) failed: incorrect block for kill projections
Added loadConP0 projection node to block in case of re-materialization of the loadConP0. x86_64 only.

Reviewed-by: kvn
2014-01-08 12:05:19 +01:00
Roland Westrelin
cb7814987c 8029873: compiler/uncommontrap/TestStackBangRbp.java crashes with SIGSEGV
May end up in uncommon trap blob/deopt blob with unguarded stack

Reviewed-by: kvn, twisti
2014-01-08 09:49:31 +01:00
Jeremy Manson
783155575c 8031376: TraceClassLoading expects there to be a (Java) caller when you load a class with the bootstrap class loader
Reviewed-by: sla, dholmes
2014-01-08 08:34:02 +01:00
Christian Thalinger
dd042bf16e 8022263: use same Clang warnings on BSD as on Linux
Reviewed-by: kvn, iveresov
2014-01-07 14:26:12 -08:00
Coleen Phillimore
469f290817 8029178: Parallel class loading test anonymous-simple gets SIGSEGV in Metaspace::contains
Metaspace::contains cannot look at purged metaspaces while CMS concurrently deallocates them.

Reviewed-by: mgerdin, sspitsyn, jmasa
2014-01-07 13:26:56 -05:00
Goetz Lindenmaier
06b9210700 8031319: PPC64: Some fixes in ppc and aix coding
Reviewed-by: kvn
2014-01-07 17:24:59 +01:00
Erik Helin
acc27f48fc Merge 2014-01-07 16:15:35 +01:00
Roland Westrelin
417b5f07b7 8027571: fatal error: meet not symmetric
Meet of one constant array and one exact array not symmetric.

Reviewed-by: kvn
2014-01-07 16:02:10 +01:00
Roland Westrelin
e9b5199781 8028064: tiered may collect wrong receiver type at virtual call
When unique callee is known at compile time, recorded class may be wrong

Reviewed-by: kvn, iveresov
2014-01-07 14:36:34 +01:00
Jeremy Manson
66b65f9f88 8027364: PSScavenge accounts too large code section to StringTable unlink
Correct timing measurement by modifying the scope of the GCTraceTime instance.

Reviewed-by: ysr, tamao
2014-01-07 13:31:33 +01:00
Staffan Larsen
3e537df17c 8031305: (hotspot) com.sun.management.VMOption is missing the ATTACH_ON_DEMAND origin
Reviewed-by: jbachorik, mchung, dholmes
2014-01-07 12:32:57 +01:00