Commit Graph

685 Commits

Author SHA1 Message Date
Y. Srinivas Ramakrishna
a45005f646 6808322: ParNew, CMS, G1: ParGCAllocBuffer overflow
Correct the overflow check in ParGCAllocBuffer::allocate(); simplify ParGCAllocBuffer::undo_allocation().

Reviewed-by: apetrusenko, jcoomes, jmasa, minqi, phh, tonyp
2009-03-13 13:56:01 -07:00
Antonios Printezis
05a81fae18 Merge 2009-03-13 16:10:21 -04:00
Christian Thalinger
de67e52949 6378821: bitCount() should use POPC on SPARC processors and AMD+10h
BitCount() should use POPC on SPARC processors where POPC is implemented directly in hardware.

Reviewed-by: kvn, never
2009-03-13 11:35:17 -07:00
Erik Trimble
8debef1a64 6816970: Bump HS15 build number to 03
Update the HS15 Build number to 03

Reviewed-by: jcoomes
2009-03-12 18:17:25 -07:00
Erik Trimble
8d6035660e Merge 2009-03-12 18:16:36 -07:00
Igor Veresov
1e875ce562 6816433: Test G1 and ParOld in JPRT
Reviewed-by: jmasa, never, ysr
2009-03-12 14:01:36 -07:00
Vladimir Kozlov
69f9ddee90 6791178: Specialize for zero as the compressed oop vm heap base
Use zero based compressed oops if java heap is below 32gb and unscaled compressed oops if java heap is below 4gb.

Reviewed-by: never, twisti, jcoomes, coleenp
2009-03-12 10:37:46 -07:00
Antonios Printezis
e794fff22c Merge 2009-03-12 11:34:44 -04:00
Christian Thalinger
66cecec230 6812587: Use auxv to determine SPARC hardware features on Solaris
A similar function to getisax(2) should be used to determine all possible instruction set extensions.

Reviewed-by: never, kvn
2009-03-11 14:16:13 -07:00
Vladimir Kozlov
7a871160ec Merge 2009-03-10 08:52:16 -07:00
Andrey Petrusenko
13c13c7289 6760309: G1: update remembered sets during Full GCs
Reviewed-by: iveresov, tonyp
2009-03-10 00:47:05 -07:00
Xiomara Jayasena
29a36f3f0e Merge 2009-03-09 13:34:00 -07:00
Xiomara Jayasena
2be2e027b0 6814575: Update copyright year
Update copyright for files that have been modified in 2009, up to 03/09

Reviewed-by: katleman, tbell, ohair
2009-03-09 13:28:46 -07:00
Xiomara Jayasena
76f6f19925 Merge 2009-03-09 11:43:30 -07:00
Antonios Printezis
faf22e51ad Merge 2009-03-09 11:32:57 -04:00
Christian Thalinger
89cea91c48 6797305: Add LoadUB and LoadUI opcode class
Add a LoadUB (unsigned byte) and LoadUI (unsigned int) opcode class so we have these load optimizations in the first place and do not need to handle them in the matcher.

Reviewed-by: never, kvn
2009-03-09 03:17:11 -07:00
Antonios Printezis
e4e765e34e 6814467: G1: small fixes related to concurrent marking verboseness
A few small fixes to remove some inconsistencies in the concurrent mark-related verbose GC output.

Reviewed-by: jmasa
2009-03-07 11:07:37 -05:00
Antonios Printezis
8893530f3a 6812428: G1: Error: assert(ret || obj_in_cs(obj),"sanity")
The length of the fast cset test vector is decided at the beginning of a GC, but more regions can be added during the GC. The simple fix is to set the length of the fast cset test vector to the max.

Reviewed-by: iveresov
2009-03-07 11:07:37 -05:00
Antonios Printezis
e7d899910b 6810698: G1: two small bugs in the sparse remembered sets
The _expanded flag of the sparse RSets is not reset and this can leave a RSet in an inconsistent state if it is expanded more than once. Also, we should be iterating over the _cur, instead of the _next, sparse table

Reviewed-by: apetrusenko, iveresov
2009-03-07 11:07:36 -05:00
John R Rose
26d192003f 6812831: factor duplicated assembly code for megamorphic invokeinterface (for 6655638)
Code in vtableStubs and templateTable moved into MacroAssembler.

Reviewed-by: kvn
2009-03-06 21:36:50 -08:00
Igor Veresov
416d70bf91 6720309: G1: don't synchronously update RSet during evacuation pauses
6720334: G1: don't update RSets of collection set regions during an evacuation pause

Introduced a deferred update mechanism for delaying the rset updates during the collection pause

Reviewed-by: apetrusenko, tonyp
2009-03-06 13:50:14 -08:00
Karen Kinnear
a23cbf5b96 Merge 2009-03-05 22:07:29 -05:00
Xiomara Jayasena
4e52be63fe Added tag jdk7-b50 for changeset 90cbd9088155 2009-03-05 09:49:03 -08:00
John R Rose
07321dec65 6812678: macro assembler needs delayed binding of a few constants (for 6655638)
Minor assembler enhancements preparing for method handles

Reviewed-by: kvn
2009-03-04 09:58:39 -08:00
Vladimir Kozlov
3e2ae68252 6812721: Block's frequency should not be NaN
Set MIN_BLOCK_FREQUENCY block's frequency when calculated block's frequency is NaN

Reviewed-by: never
2009-03-03 18:25:57 -08:00
Vladimir Kozlov
4b15cdadd3 Merge 2009-03-03 10:34:22 -08:00
Y. Srinivas Ramakrishna
72bfacbd95 6797870: Add -XX:+{HeapDump,PrintClassHistogram}{Before,After}FullGC
Call newly created CollectedHeap::dump_{pre,post}_full_gc before and after every stop-world full collection cycle on GenCollectedHeap and ParallelScavengeHeap. (Support for G1CollectedHeap forthcoming under CR 6810861.) Small modifications to existing heap dumping and class histogram implementation, especially to allow multiple on-the-fly histos/dumps by the VM thread during a single safepoint.

Reviewed-by: jmasa, alanb, mchung
2009-03-02 16:37:04 -08:00
Daniel D. Daugherty
8c0f3ead78 Merge 2009-03-02 16:56:51 -07:00
Daniel D. Daugherty
8aa430beb0 Merge 2009-03-02 14:43:36 -07:00
Daniel D. Daugherty
8aebf28301 6567360: 3/4 SIGBUS in jvmti RawMonitor magic check for unaligned bad monitor pointer
Change JvmtiEnvBase::is_valid() and JvmtiRawMonitor::is_valid() to fetch the _magic fields via Bytes::get_native_u[248]().

Reviewed-by: coleenp, swamyv
2009-03-02 14:05:07 -07:00
Daniel D. Daugherty
da3f81559f 6805864: 4/3 Problem with jvmti->redefineClasses: some methods don't get redefined
Remove incorrect optimization in klassItable::adjust_method_entries(). Add RedefineClasses() tracing support for obsolete method entry.

Reviewed-by: acorn, swamyv
2009-03-02 14:03:03 -07:00
Daniel D. Daugherty
56fe18e375 6800721: 3/4 JavaThread::jvmti_thread_state() and JvmtiThreadState::state_for() robustness
Check for NULL return values from jvmti_thread_state() and state_for() and return a JVM TI error code as appropriate.

Reviewed-by: coleenp, swamyv
2009-03-02 14:00:23 -07:00
Daniel D. Daugherty
74a99e1e82 6700114: 3/4 Assertion (_thread->get_interp_only_mode() == 1,"leaving interp only when mode not one")
Don't create JvmtiThreadState for an exiting JavaThread.

Reviewed-by: coleenp, swamyv
2009-03-02 13:57:17 -07:00
Tom Rodriguez
48d4a43c2a 6811384: MacroAssembler::serialize_memory may touch next page on amd64
Reviewed-by: kvn, phh, twisti
2009-03-01 20:49:46 -08:00
Y. Srinivas Ramakrishna
dd4aaeadd4 Merge 2009-02-27 15:30:47 -08:00
Xiomara Jayasena
dd661ad390 Merge 2009-02-27 15:13:00 -08:00
Christian Thalinger
05d1de7727 6810672: Comment typos
I have collected some typos I have found while looking at the code.

Reviewed-by: kvn, never
2009-02-27 13:27:09 -08:00
Vladimir Kozlov
67a5668b16 6811267: Fix for 6809798 broke linux build
Fix method's declaration.

Reviewed-by: phh, twisti
2009-02-27 08:34:19 -08:00
Lillian Angel
d6cdfde9d9 6778669: Patch from Red Hat -- fixes compilation errors
Some fixes which are required to build on recent GCCs.

Reviewed-by: never, kvn
2009-02-27 03:35:40 -08:00
Tom Rodriguez
114da9bcfc 6810855: KILL vs. TEMP ordering restrictions are too strong
Reviewed-by: kvn
2009-02-26 16:57:21 -08:00
Vladimir Kozlov
9b31d58b98 6809798: SafePointScalarObject node placed into incorrect block during GCM
Replace the control edge of a pinned node before scheduling.

Reviewed-by: never
2009-02-26 14:26:02 -08:00
Andrei Pangin
31eeaafbcf Merge 2009-02-26 14:25:55 -08:00
Xiomara Jayasena
6f9ccbbe7f Added tag jdk7-b49 for changeset 2fb28c2f14c0 2009-02-26 10:57:13 -08:00
Erik Trimble
954e8082f6 Merge 2009-02-25 23:16:22 -08:00
Erik Trimble
44091d390c Merge 2009-02-25 22:55:54 -08:00
Tom Rodriguez
f7098831dd 6807963: need tool to make sense of LogCompilaton output
Reviewed-by: kvn
2009-02-25 14:36:27 -08:00
Tom Rodriguez
a82243d887 6805427: adlc compiler may generate incorrect machnode emission code
Reviewed-by: kvn, twisti
2009-02-25 10:53:14 -08:00
Jon Masamitsu
6b78cf8b99 Merge 2009-02-24 22:51:00 -08:00
Jon Masamitsu
b051a23591 6806226: Signed integer overflow in growable array code causes JVM crash
Workaround the overflow by doing the intermediate calculations in an unsigned variable.

Reviewed-by: ysr, jcoomes
2009-02-24 22:12:24 -08:00
Antonios Printezis
f883e6fde8 6804746: G1: guarantee(variance() > -1.0,"variance should be >= 0") (due to evacuation failure)
Under certain circumstances (evacuation failure) the pause time is not communicated to the policy and, as a result, the pause time field is not initialized properly.

Reviewed-by: jmasa
2009-02-24 15:50:23 -05:00
Vladimir Kozlov
decdeea77d Merge 2009-02-24 09:53:20 -08:00
Vladimir Kozlov
b07ac51bf3 6791572: assert("duplicating node that's already been matched")
Mark inputs for an address expression as shared if there are other uses besides address expressions.

Reviewed-by: never
2009-02-23 16:03:19 -08:00
Christian Thalinger
0723dab28b 6808589: Merge vm_version_x86_{32,64}.{cpp,hpp}
There is very much duplicated code in vm_version_x86_{32,64}.{cpp,hpp}.  Refactoring these would help maintainability.

Reviewed-by: kvn, never
2009-02-23 12:02:30 -08:00
Andrei Pangin
6acc244444 Merge 2009-02-22 17:21:13 -08:00
Andrei Pangin
85a47f34c6 Merge 2009-02-22 17:11:56 -08:00
Y. Srinivas Ramakrishna
7efb6ac73a Merge 2009-02-20 11:12:26 -08:00
Vladimir Kozlov
dc3008a513 6802499: EA: assert(false,"unknown node on this path")
Add missing checks for SCMemProj node in Escape analysis code.

Reviewed-by: never
2009-02-19 17:38:53 -08:00
Xiomara Jayasena
f5594e9e8d Added tag jdk7-b48 for changeset 1da7c5c8156d 2009-02-19 14:08:00 -08:00
Ivan P Krylov
6aec7d2ea9 6806046: Hotspot build error when compiled from Visual Studio
Define HOTSPOT_LIB_ARCH in the preprocessor flags of the generated projects

Reviewed-by: kamg, xlu
2009-02-19 04:54:22 -05:00
Erik Trimble
473e5b6e54 6807345: Bump HS15 build number to 02
Update the HS15 Build number to 02

Reviewed-by: jcoomes
2009-02-18 18:20:02 -08:00
Erik Trimble
0a2c842e50 Merge 2009-02-18 18:14:18 -08:00
Vladimir Kozlov
73e8e582ba 6807084: AutoBox elimination is broken with compressed oops
Add checks for DecodeN nodes into AutoBox elimination code.

Reviewed-by: never
2009-02-18 13:53:42 -08:00
Jon Masamitsu
f1847266b7 6786346: intermittent Internal Error (src/share/vm/memory/cardTableModRefBS.cpp:226)
Two assertions were incorrectly composed.

Reviewed-by: tonyp
2009-02-17 15:35:58 -08:00
Vladimir Kozlov
681eb89b31 Merge 2009-02-17 14:30:24 -08:00
Christian Thalinger
f72a09355f 6805950: Typos in andL_rReg_imm instructions in x86_64.ad
There are two typos in andL_rReg_imm instructions in x86_64.ad.

Reviewed-by: kvn
2009-02-17 11:19:31 +01:00
Christian Thalinger
dd25f39709 6805724: ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant
C2, ModLNode::Ideal() generates functionally incorrect graph when divisor is any (2^k-1) constant.

Reviewed-by: rasbold
2009-02-16 07:19:26 -08:00
Andrei Pangin
b4e9e47b74 Merge 2009-02-15 20:09:02 -08:00
Christian Thalinger
a2ed00b650 6800154: Add comments to long_by_long_mulhi() for better understandability
This patch adds a comment pointing to the Hacker's Delight version of the algorithm plus a verbatim copy of it.  Furthermore it adds inline comments.

Reviewed-by: kvn, jrose
2009-02-13 09:09:35 -08:00
Xiomara Jayasena
0982a57615 Added tag jdk7-b47 for changeset e3f44a955240 2009-02-12 14:00:38 -08:00
Erik Trimble
46194466cf Merge 2009-02-10 20:33:36 -08:00
Andrey Petrusenko
a7da5440dd 6700941: G1: allocation spec missing for some G1 classes
Reviewed-by: tonyp
2009-02-10 18:39:09 +03:00
John Coomes
b3e23ac700 Merge 2009-02-09 13:47:26 -08:00
Y. Srinivas Ramakrishna
0badccf962 6800586: -XX:+PrintGCDateStamps is using mt-unsafe localtime function
Replaced localtime() with localtime_r() on Solaris and Linux.

Reviewed-by: apetrusenko, dholmes, jmasa
2009-02-09 12:26:05 -08:00
Andrey Petrusenko
4be1a50ed3 6802413: G1: G1FixedSurvivorSpaceSize should be converted into regions in calculate_survivors_policy()
Reviewed-by: tonyp, jmasa
2009-02-09 17:33:06 +03:00
Jon Masamitsu
3b5d6a04dd 6690928: Use spinning in combination with yields for workstealing termination
Substitute a spin loop for most calls to yield() to reduce the stress on the system.

Reviewed-by: tonyp
2009-02-08 13:18:01 -08:00
Vladimir Kozlov
2f2589d2dc 6791852: assert(b->_nodes[insidx] == n,"got insidx set incorrectly")
Move the CreateEx up before each round of IFG construction

Reviewed-by: never, phh
2009-02-06 13:31:03 -08:00
Xiomara Jayasena
f7ccda2b14 Added tag jdk7-b46 for changeset be9d0d46381d 2009-02-05 16:07:33 -08:00
Vladimir Kozlov
94a461f4cb 6799693: Server compiler leads to data corruption when expression throws an Exception
Use merged memory state for an allocation's slow path.

Reviewed-by: never
2009-02-05 14:43:58 -08:00
Andrey Petrusenko
61181babf1 6484959: G1: introduce survivor spaces
6797754: G1: combined bugfix

Implemented a policy to control G1 survivor space parameters.

Reviewed-by: tonyp, iveresov
2009-02-06 01:38:50 +03:00
Vladimir Kozlov
72b75d1adf 6788376: allow to ignore unrecognized VM options
Add new product flag -XX:+IgnoreUnrecognizedVMOptions

Reviewed-by: ysr, xlu
2009-02-05 13:38:52 -08:00
Tom Rodriguez
275a0bfb42 6793828: G1: invariant: queues are empty when activated
Reviewed-by: jrose, kvn
2009-02-05 11:42:10 -08:00
Tom Rodriguez
67f20d82c9 6442502: assert(bits,"Use TypePtr for NULL") on linux-x86
Reviewed-by: kvn
2009-02-04 23:17:38 -08:00
Y. Srinivas Ramakrishna
61c259aeb5 Merge 2009-02-04 15:42:52 -08:00
Tom Rodriguez
a70da64c72 6798785: Crash in OopFlow::build_oop_map: incorrect comparison of 64bit pointers
Reviewed-by: phh, kvn
2009-02-04 11:44:57 -08:00
Tom Rodriguez
c46f747070 6782260: Memory leak in CodeBuffer::create_patch_overflow
Reviewed-by: phh, kvn
2009-02-03 18:05:19 -08:00
Christian Thalinger
17d35f31a2 6799452: HotSpot tests Makefile should take care of ALT_SLASH_JAVA
The HotSpot tests Makefile has a hardcoded SLASH_JAVA which makes it difficult to run the tests on non-Sun build machines which do not have a /java infrastructure.

Reviewed-by: kamg
2009-02-03 08:10:28 -08:00
Christian Thalinger
ecbdf3bb83 6795362: 32bit server compiler leads to wrong results on solaris-x86
The C2 compiler leads to wrong results on solaris-i486 (32-bit) for a testcase given in the CR.

Reviewed-by: never, rasbold
2009-02-03 01:39:12 -08:00
Kelly O'Hair
09010fe0a7 6799141: Build with --hash-style=both so that binaries can work on SuSE 10
Reviewed-by: tbell
2009-01-31 17:19:42 -08:00
Jon Masamitsu
39b23ff0a0 6792421: assert(_bitMap->isMarked(addr+size-1),inconsistent Printezis mark)
The CMS concurrent precleaning and concurrent marking phases should work around classes that are undergoing redefinition.

Reviewed-by: ysr, tonyp
2009-01-31 00:15:00 -08:00
Erik Trimble
50d5d6cd86 Merge 2009-01-30 15:28:00 -08:00
Y. Srinivas Ramakrishna
d981bd442b 6787254: Work queue capacity can be increased substantially on some platforms
Increased the default and maximum size of the CMS marking stack and the size of the parallel workers' work queues in 64-bit mode. The latter was accomplished by an increase in the width of the Taskqueue's Age struct and its Tag field in 64-bit mode.

Reviewed-by: jmasa, tonyp
2009-01-30 14:17:52 -08:00
Y. Srinivas Ramakrishna
34b247f068 Merge 2009-01-29 21:25:42 -08:00
Xiomara Jayasena
49f97d10c8 Added tag jdk7-b45 for changeset 6b84304c8b89 2009-01-29 13:20:56 -08:00
Igor Veresov
da292a7197 6783381: NUMA allocator: don't pretouch eden space with UseNUMA
Moved pretouching to MutableSpace. Also MutableSpace now turns on page interleaving for the region it covers.

Reviewed-by: jmasa, jcoomes
2009-01-27 18:13:59 -08:00
Y. Srinivas Ramakrishna
f031c45430 6786503: Overflow list performance can be improved
Avoid overflow list walk in CMS & ParNew when it is unnecessary. Fix a couple of correctness issues, including a C-heap leak, in ParNew at the intersection of promotion failure, work queue overflow and object array chunking. Add stress testing option and related assertion checking.

Reviewed-by: jmasa
2009-01-26 12:47:21 -08:00
Xiaobin Lu
5ee6e7f6ed 6795913: A few remaining wrong casts need to be fixed for building hotspot successfully on Mac OS
Use NULL_WORD in the places where intptr_t is expected due to incompatible types between intptr_t & int32_t

Reviewed-by: phh, coleenp, never
2009-01-26 12:07:54 -08:00
Christian Thalinger
3b8452da93 6796746: rename LoadC (char) opcode class to LoadUS (unsigned short)
Renaming LoadC to LoadUS would round up the planned introduction of LoadUB and LoadUI.

Reviewed-by: phh, kvn
2009-01-26 16:22:12 +01:00
Coleen Phillimore
91dd5dcbe4 Merge 2009-01-23 10:41:28 -05:00
Xiomara Jayasena
9933a50bf3 Added tag jdk7-b44 for changeset ec694d49c4be 2009-01-22 14:42:01 -08:00
John Coomes
8109aa4a16 Merge 2009-01-21 13:40:10 -08:00