Christian Thalinger
0563626b3c
7006044: materialize cheap non-oop pointers on 64-bit SPARC
...
After 6961690 we load non-oop pointers for the constant table which could easily be materialized in a few instructions.
Reviewed-by: never, kvn
2010-12-14 12:44:30 -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
Vladimir Kozlov
797fb02b41
7004925: CTW: assert(nbits == 32 || -(1 << nbits-1) <= x && x < ( 1 << nbits-1)) failed: value out of range
...
Set offset in register if it does not fit 13 bits.
Reviewed-by: iveresov
2010-12-07 11:00:02 -08:00
Tom Rodriguez
f74039fd41
7004530: casx used for 32 bit cas after 7003554
...
Reviewed-by: kvn, iveresov
2010-12-03 12:14:33 -08:00
Christian Thalinger
bd6731ae92
7003798: test/compiler/6991596 fails with true != false
...
The test of 6991596 fails on SPARCV9.
Reviewed-by: kvn, never, jrose
2010-12-03 06:14:37 -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
Christian Thalinger
b64a0fd5a4
6997459: JSR 292 after 6994093 getting: on return to interpreted call, restored SP is corrupted
...
Reviewed-by: kvn, jrose, never
2010-11-04 12:16:58 -07:00
Christian Thalinger
a1396ef871
6996240: The BitSet.length method sometimes returns an index+1 value less than that of the highest bit set
...
Reviewed-by: never, kvn
2010-11-02 14:56:40 -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
John R Rose
c798146bee
6994093: MethodHandle.invokeGeneric needs porting to SPARC
...
SPARC code missing from fix to 6939224
Reviewed-by: twisti
2010-10-30 11:45:49 -07:00
Tom Rodriguez
1022ea2299
Merge
2010-10-18 15:43:29 -07:00
Tom Rodriguez
daa052114f
Merge
2010-10-18 09:33:24 -07:00
Christian Thalinger
14d9ac3169
6991596: JSR 292 unimplemented adapter_opt_i2i and adapter_opt_l2i on SPARC
...
Reviewed-by: kvn, jrose, dsamersoff
2010-10-18 01:54: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
Roland Westrelin
225a3b0eb8
Merge
2010-10-13 15:38:14 -07:00
Christian Thalinger
c225b71d63
Merge
2010-10-13 13:31:30 -07:00
Karen Kinnear
7d2a7e7452
Merge
2010-10-13 11:46:46 -04:00
Roland Westrelin
08e2ead403
6991211: assert failure on sparc: "can not have caller-save register operands at calls"
...
Fixes sparc only assert failure following 6972540
Reviewed-by: never
2010-10-13 10:29:31 +02:00
Christian Thalinger
98e9ecf9da
6987555: JSR 292 unboxing to a boolean value fails on big-endian SPARC
...
Reviewed-by: never, jrose
2010-10-13 01:19:43 -07: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
Gary Benson
a10ec19a4d
6990549: Zero and Shark fixes after 6978355 and 6953144
...
Reviewed-by: twisti
2010-10-08 02:42:17 -07:00
Tom Rodriguez
39d16839d3
6980792: Crash "exception happened outside interpreter, nmethods and vtable stubs (1)"
...
Reviewed-by: kvn
2010-10-07 21:40:55 -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
Tom Rodriguez
e65f42fe5e
6982370: SIGBUS in jbyte_fill
...
Reviewed-by: kvn
2010-09-14 14:09:24 -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
Matthias Klose
d0cc3fc376
6983073: fix compiler error with GCC 4.4 or newer on SPARC
...
Reviewed-by: twisti
2010-09-08 04:50:26 -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
Tom Rodriguez
6e78f6cb4b
6981773: incorrect fill value with OptimizeFill
...
Reviewed-by: kvn, twisti
2010-09-02 11:40:02 -07:00