388 Commits

Author SHA1 Message Date
Vladimir Kozlov
ddd4d3ad73 Merge 2011-02-14 14:36:29 -08:00
Christian Thalinger
c2b37037c6 7018378: JSR 292: _bound_int_mh produces wrong result on 64-bit SPARC
Reviewed-by: kvn
2011-02-14 03:21:18 -08:00
Coleen Phillimore
cba53708ec 6588413: Use -fvisibility=hidden for gcc compiles
Add option for gcc 4 and above, define JNIEXPORT and JNIIMPORT to visibility=default, add for jio_snprintf and others since -fvisibility=hidden overrides --version-script definitions.

Reviewed-by: kamg, never
2011-02-01 11:23:19 -05:00
Christian Thalinger
561c090437 7009309: JSR 292: compiler/6991596/Test6991596.java crashes on fastdebug JDK7/b122
Reviewed-by: kvn, never
2011-02-01 03:38:44 -08:00
Coleen Phillimore
7b4f8073f0 6990754: Use native memory and reference counting to implement SymbolTable
Move symbols from permgen into C heap and reference count them

Reviewed-by: never, acorn, jmasa, stefank
2011-01-27 16:11:27 -08:00
Igor Veresov
18fcb81cff 7014247: CTW fails when compile sun/misc/AtomicLongCSImpl (REMOVED from JDK7)
Use lea to compute field address in AtomicLongCSImpl::attemptUpdate() intrinsic on x86.

Reviewed-by: never, kvn
2011-01-25 14:38:15 -08:00
Tom Rodriguez
4739203b6c 7008809: should report the class in ArrayStoreExceptions from compiled code
Reviewed-by: iveresov, twisti
2011-01-24 13:34:18 -08:00
John Cuthbertson
d31ff8a886 Merge 2011-01-20 13:57:12 -08:00
John Cuthbertson
2ad5e5ace5 7012642: G1: JumbleGC002 test aborts with segmentation violation due to uncaught stack overflow
With recent G1 allocation path changes, the value of StackShadowPages in fast debug builds of the JVM, is no longer large enough to prevent the JVM C++ code from touching the stack guard pages. Increase the value of StackShadowPages to a suitable value.

Reviewed-by: ysr, tonyp, coleenp
2011-01-19 13:01:11 -08:00
Igor Veresov
00e24ca7ca 7012766: assert(false) failed: DEBUG MESSAGE in MacroAssembler::debug32
Interpreter expects to see methodOop in rbx on method entry, which needs to be restored after call to profile_method.

Reviewed-by: kvn, never
2011-01-18 18:00:06 -08:00
Christian Thalinger
53c79c908e Merge 2011-01-13 07:20:32 -08:00
Igor Veresov
6a80d2126c 4930919: race condition in MDO creation at back branch locations
Reuse set_method_data_for_bcp() to setup mdp after MDO creation.

Reviewed-by: kvn, never
2011-01-10 18:46:29 -08:00
Christian Thalinger
b2f607fcb6 7010180: JSR 292 InvokeDynamicPrintArgs fails with: assert(_adapter == NULL) failed: init'd to NULL
Reviewed-by: never
2011-01-10 00:56:39 -08:00
Daniel D. Daugherty
0c7a73dc8c Merge 2011-01-07 15:54:32 -08:00
Paul Hohensee
7b0134a7cb 7003271: Hotspot should track cumulative Java heap bytes allocated on a per-thread basis
Track allocated bytes in Thread's, update on TLAB retirement and direct allocation in Eden and tenured, add JNI methods for ThreadMXBean.

Reviewed-by: coleenp, kvn, dholmes, ysr
2011-01-07 10:42:32 -05:00
Igor Veresov
c6f34365c2 7010618: C1: array length should be treated at int on 64bit during array allocation
Sign-extend the length argument during array allocation

Reviewed-by: never, kvn
2011-01-06 16:03:20 -08:00
Igor Veresov
43280aa63e 7009231: C1: Incorrect CAS code for longs on SPARC 32bit
Fix CAS of longs on SPARC 32bit and cmove on SPARC 64bit.

Reviewed-by: kvn
2010-12-27 21:51:31 -08:00
Christian Thalinger
a8a98509e7 7007377: JSR 292 MethodHandlesTest.testCastFailure fails on SPARC with -Xcomp +DeoptimizeALot
Reviewed-by: kvn, jrose
2010-12-22 02:02:53 -08:00
Igor Veresov
a9bee9ec34 Merge 2010-12-08 17:50:49 -08:00
Igor Veresov
eafb22164b 7005241: C1: SEGV in java.util.concurrent.LinkedTransferQueue.xfer() with compressed oops
Implementation of the CAS primitive for x64 compressed oops was incorrect. It kills rscratch2 register (r11), which is allocatable in C1. Also, we don't need to restore cmpval as it's never used after that, so we need only one temporary register, which can be scratch1.

Reviewed-by: kvn, never
2010-12-08 02:36:36 -08:00
Christian Thalinger
ffaadcecea 6961690: load oops from constant table on SPARC
Oops should be loaded from the constant table of an nmethod instead of materializing them with a long code sequence.

Reviewed-by: never, kvn
2010-12-03 01:34:31 -08:00
Igor Veresov
ab725dba1d 7003554: (tiered) assert(is_null_object() || handle() != NULL) failed: cannot embed null pointer
C1 with profiling doesn't check whether the MDO has been really allocated, which can silently fail if the perm gen is full. The solution is to check if the allocation failed and bailout out of inlining or compilation.

Reviewed-by: kvn, never
2010-12-02 17:21:12 -08:00
Christian Thalinger
7fedab77bf 6998985: faulty generic arraycopy on windows x86_64: 4th arg overwritten with oop
Reviewed-by: kvn, never
2010-12-02 01:02:55 -08:00
Tom Rodriguez
f9d845fd45 6875026: CTW failure jdk6_18/hotspot/src/share/vm/c1/c1_LinearScan.cpp:5486
Reviewed-by: kvn, iveresov
2010-12-01 15:47:52 -08:00
Coleen Phillimore
49678541ff Merge 2010-12-01 18:32:50 -05:00
Ivan P Krylov
9802f91e66 6348631: remove the use of the HPI library from Hotspot
Move functions from hpi library to hotspot, communicate with licensees and open source community, check jdk for dependency, file CCC request

Reviewed-by: coleenp, acorn, dsamersoff
2010-12-01 18:26:32 -05:00
Igor Veresov
d59d7ffc4a 6985015: C1 needs to support compressed oops
This change implements compressed oops for C1 for x64 and sparc. The changes are mostly on the codegen level, with a few exceptions when we do access things outside of the heap that are uncompressed from the IR. Compressed oops are now also enabled with tiered.

Reviewed-by: twisti, kvn, never, phh
2010-11-30 23:23:40 -08:00
Coleen Phillimore
a1d3c19596 6780143: hs203t003 hits SIGSEGV/EXCEPTION_ACCESS_VIOLATION with -XX:+UseCompressedOops
Using r12 as temporary register around call_VM trashes heapbase becausecall_VM doesn't always return immediately to following code (eg forward_exception, popframe and early return support).

Reviewed-by: never, kvn
2010-11-29 15:43:36 -05:00
Stefan Karlsson
8006fe8f75 6989984: Use standard include model for Hospot
Replaced MakeDeps and the includeDB files with more standardized solutions.

Reviewed-by: coleenp, kvn, kamg
2010-11-23 13:22:55 -08:00
Vladimir Kozlov
ce2df719c6 6997311: SIGFPE in new long division asm code
Use unsigned DIV instruction

Reviewed-by: never
2010-11-06 18:52:07 -07:00
Vladimir Kozlov
249b1f6c4f 6987135: Performance regression on Intel platform with 32-bits edition between 6u13 and 6u14
Use hardware DIV instruction for long division by constant when it is faster than code with multiply.

Reviewed-by: never
2010-11-02 09:00:37 -07:00
John R Rose
ce0125e7f2 6984311: JSR 292 needs optional bootstrap method parameters
Allow CONSTANT_InvokeDynamic nodes to have any number of extra operands.

Reviewed-by: twisti
2010-10-30 13:08:23 -07:00
Tom Rodriguez
daa052114f Merge 2010-10-18 09:33:24 -07:00
Tom Rodriguez
e4f08bc195 6992477: fix for 6991512 broke sparc barriers
Reviewed-by: kvn, iveresov
2010-10-15 14:21:11 -07:00
Karen Kinnear
4af336814e Merge 2010-10-15 15:12:04 -04:00
Karen Kinnear
7d2a7e7452 Merge 2010-10-13 11:46:46 -04:00
Igor Veresov
28a13e88e7 6991512: G1 barriers fail with 64bit C1
Fix compare-and-swap intrinsic problem with G1 post-barriers and issue with branch ranges in G1 stubs on sparc

Reviewed-by: never, kvn
2010-10-12 23:51:20 -07:00
Christian Thalinger
0e4ed251b8 6829194: JSR 292 needs to support compressed oops
Reviewed-by: kvn, jrose
2010-10-11 04:18:58 -07:00
Bob Vandette
72616ad2bc 6989297: Integrate additional portability improvements
Reviewed-by: vladidan, dholmes
2010-10-07 15:12:57 -04:00
Vladimir Kozlov
68f9001261 Merge 2010-10-06 14:18:32 -07:00
Tom Rodriguez
84e48aee05 6988018: dtrace/hotspot/MethodInvocation/MethodInvocation002 crashes with client compiler
Reviewed-by: iveresov, kvn, kamg
2010-10-05 11:16:12 -07:00
Tom Rodriguez
f591ed981d 6968348: Byteswapped memory access can point to wrong location after JIT
Reviewed-by: twisti, kvn, iveresov
2010-10-04 17:09:18 -07:00
Igor Veresov
63fd308170 6988779: c1_LIRAssembler_x86.cpp crashes VS2010 compiler
The workaround changes the scope of the variable

Reviewed-by: phh, ysr, kvn
2010-09-30 16:00:40 -07:00
Roland Westrelin
718b005834 Merge 2010-09-24 13:14:32 -07:00
Christian Thalinger
79847991ad 6986944: JSR 292 assert(caller_nm->is_method_handle_return(caller_frame.pc())) failed: must be MH call site
Reviewed-by: never, kvn
2010-09-24 03:51:43 -07:00
John R Rose
52e3d262a1 6939224: MethodHandle.invokeGeneric needs to perform the correct set of conversions
Reviewed-by: never
2010-09-13 23:24:30 -07:00
Igor Veresov
aa21a39d97 6919069: client compiler needs to capture more profile information for tiered work
Added profiling of instanceof and aastore.

Reviewed-by: kvn, jrose, never
2010-09-13 12:10:49 -07:00
Igor Veresov
0aba89442c 6984056: C1: incorrect code for integer constant addition on x64
Fix add/sub of constants to ints on x64

Reviewed-by: kvn
2010-09-11 15:21:37 -07:00
Pavel Tisnovsky
af2548723c 6934483: GCC 4.5 errors "suggest parentheses around something..." when compiling with -Werror and -Wall
These are minor changes fixing compile failure when -Wall -Werror flags are used under gcc 4.5.

Reviewed-by: twisti, kvn, rasbold
2010-09-09 05:24:11 -07:00
Igor Veresov
2c66a6c3fd 6953144: Tiered compilation
Infrastructure for tiered compilation support (interpreter + c1 + c2) for 32 and 64 bit. Simple tiered policy implementation.

Reviewed-by: kvn, never, phh, twisti
2010-09-03 17:51:07 -07:00