388 Commits

Author SHA1 Message Date
Tom Rodriguez
150ca9b5b1 Merge 2010-08-27 17:35:08 -07:00
Tom Rodriguez
08d9e03b81 4809552: Optimize Arrays.fill(...)
Reviewed-by: kvn
2010-08-27 17:33:49 -07:00
Christian Thalinger
a4b2fe3b1c 6978355: renaming for 6961697
This is the renaming part of 6961697 to keep the actual changes small for review.

Reviewed-by: kvn, never
2010-08-25 05:27:54 -07:00
Tom Rodriguez
a54b1ff70e 6978249: spill between cpu and fpu registers when those moves are fast
Reviewed-by: kvn
2010-08-19 14:51:47 -07:00
Tom Rodriguez
dc37d152e7 6975027: use of movptr to set length of array
Reviewed-by: kvn, iveresov
2010-08-10 12:15:10 -07:00
Tom Rodriguez
68ff9b2b00 Merge 2010-08-09 17:51:56 -07:00
Bob Vandette
b95c7e9523 6953477: Increase portability and flexibility of building Hotspot
A collection of portability improvements including shared code support for PPC, ARM platforms, software floating point, cross compilation support and improvements in error crash detail.

Reviewed-by: phh, never, coleenp, dholmes
2010-08-03 08:13:38 -04:00
Vladimir Kozlov
f0b6dc4e4f 6973308: Missing zero length check before repne scas in check_klass_subtype_slow_path()
Set Z = 0 (not equal) before repne_scan() to indicate that class was not found when RCX == 0.

Reviewed-by: never, phh
2010-07-30 10:21:15 -07:00
Vladimir Kozlov
7378cf14d9 6968646: JVM crashes with SIGFPE during startup
Check that cpuid returns valid values for processor topology (not zeros).

Reviewed-by: never, twisti
2010-07-14 14:29:14 -07:00
Vladimir Kozlov
4bd0381466 6964774: Adjust optimization flags setting
Adjust performance flags settings.

Reviewed-by: never, phh
2010-06-29 10:34:00 -07:00
John R Rose
1f4cfb029b 6939203: JSR 292 needs method handle constants
Add new CP types CONSTANT_MethodHandle, CONSTANT_MethodType; extend 'ldc' bytecode.

Reviewed-by: twisti, never
2010-06-09 18:50:45 -07:00
Igor Veresov
00b75f8353 6958292: C1: Enable parallel compilation
Enable parallel compilation in C1

Reviewed-by: never, kvn
2010-06-04 11:18:04 -07:00
Vladimir Kozlov
36f8c82970 6958254: -XX:+VerifyOops is broken on x86
Save and restore r10 in verify_oop().

Reviewed-by: never
2010-06-03 14:20:27 -07:00
John R Rose
d6a9b93b5a Merge 2010-06-02 22:45:42 -07:00
Vladimir Kozlov
a3005a16fc 6954029: Improve implicit null check generation with compressed oops
Hoist DecodeN instruction above null check

Reviewed-by: never, twisti
2010-06-02 09:49:32 -07:00
Igor Veresov
4da8658b14 6955349: C1: Make G1 barriers work with x64
This fixes G1 barriers in c1 on x64.

Reviewed-by: never
2010-05-27 22:01:55 -07:00
Erik Trimble
ba7c173659 6941466: Oracle rebranding changes for Hotspot repositories
Change all the Sun copyrights to Oracle copyright

Reviewed-by: ohair
2010-05-27 19:08:38 -07:00
Vladimir Kozlov
cc18a50e59 6916623: Align object to 16 bytes to use Compressed Oops with java heap up to 64Gb
Added new product ObjectAlignmentInBytes flag to control object alignment.

Reviewed-by: twisti, ysr, iveresov
2010-05-27 18:01:56 -07:00
Christian Thalinger
7a9f2e7625 6934104: JSR 292 needs to support SPARC C2
C2 for SPARC needs to support JSR 292.

Reviewed-by: kvn, never
2010-05-25 02:38:48 -07:00
John R Rose
581521ba96 6939207: refactor constant pool index processing
Factored cleanup of instruction decode which prepares for enhanced ldc semantics.

Reviewed-by: twisti
2010-05-23 01:38:26 -07:00
Christian Thalinger
2e24ba80e9 6930772: JSR 292 needs to support SPARC C1
C1 for SPARC needs to support JSR 292.

Reviewed-by: never, jrose
2010-05-21 02:59:24 -07:00
John R Rose
71599d89d4 Merge 2010-05-11 15:19:19 -07:00
Antonios Printezis
cc872846f5 Merge 2010-05-03 16:31:07 -04:00
John R Rose
4eb75c2df3 6939134: JSR 292 adjustments to method handle invocation
Split MethodHandle.invoke into invokeExact and invokeGeneric; also clean up JVM-to-Java interfaces

Reviewed-by: twisti
2010-05-01 02:42:18 -07:00
Christian Thalinger
0211f9703a 6943304: remove tagged stack interpreter
Reviewed-by: coleenp, never, gbenson
2010-04-30 08:37:24 -07:00
Christian Thalinger
6d2a896bcd 6829193: JSR 292 needs to support SPARC
There are unimplemented portions of the hotspot code for method handles and invokedynamic specific to SPARC.

Reviewed-by: kvn, never, jrose
2010-04-29 06:30:25 -07:00
Igor Veresov
cb911cf098 6946892: c1 shouldn't sign-extend to upper 32bits on x64
C1 does sign-extension when it loads ints and shorts from memory to 64-bit registers. This causes problems for c2 because it relies on the fact the int passed in a 64-bit register is zero-extended.

Reviewed-by: never
2010-04-27 11:19:12 -07:00
Hiroshi Yamauchi
cd48f31efe 6946040: add intrinsic for short and char reverseBytes
Reviewed-by: never, twisti
2010-04-26 11:27:21 -07:00
Tom Rodriguez
98ee92e724 6939930: exception unwind changes in 6919934 hurts compilation speed
Reviewed-by: twisti
2010-04-15 18:14:49 -07:00
Igor Veresov
fc76d07b40 6942223: c1 64 bit fixes
This fixes lir_cmp_l2i on x64 and sparc 64bit, and the debug info generation.

Reviewed-by: never
2010-04-08 12:13:07 -07:00
Christian Thalinger
4d0664b427 6941529: SharedRuntime::raw_exception_handler_for_return_address must reset thread MethodHandle flag
During testing a bug was hit when an exception returned to the interpreter and the SP was wrong.

Reviewed-by: kvn, never
2010-04-08 10:55:40 +02:00
Vladimir Kozlov
5f8098a402 6940701: Don't align loops in stubs for Niagara sparc
Don't align loops in stubs for Niagara sparc since NOPs are expensive.

Reviewed-by: twisti, never
2010-04-07 09:37:47 -07:00
Karen Kinnear
7aaaad73cf Merge 2010-03-26 11:10:26 -04:00
Christian Thalinger
1270c6c005 6932091: JSR 292 x86 code cleanup
Some code cleanups found during the JSR 292 SPARC port.

Reviewed-by: kvn, never
2010-03-18 09:56:51 +01:00
Vladimir Kozlov
72a7a6ffcf 6935535: String.indexOf() returns incorrect result on x86 with SSE4.2
Added missing counter decrement when substring search restarted.

Reviewed-by: twisti
2010-03-17 10:47:03 -07:00
Christian Thalinger
ebc298d208 6934966: JSR 292 add C1 logic for saved SP over MethodHandle calls
The logic for x86 C1 to save the SP over MH calls is pretty straight forward but SPARC handles that differently.

Reviewed-by: never, jrose
2010-03-17 10:22:41 +01:00
Christian Thalinger
82e9e2b4af 6934494: JSR 292 MethodHandles adapters should be generated into their own CodeBlob
Passing a null pointer to an InvokeDynamic function call should lead to a NullPointerException.

Reviewed-by: kvn, never
2010-03-16 11:52:17 +01:00
Roland Westrelin
7dcf59914e 6932496: c1: deoptimization of jsr subroutine fails on sparcv9
Store jsr ret bci as intptr constant in c1 debug info

Reviewed-by: never
2010-03-05 13:58:34 +01:00
Christian Thalinger
ffec4c00c4 6919934: JSR 292 needs to support x86 C1
This implements JSR 292 support for C1 x86.

Reviewed-by: never, jrose, kvn
2010-03-09 20:16:19 +01:00
Christian Thalinger
94a808f51d 6932536: JSR 292 modified JDK MethodHandlesTest fails on x86_64
A modified MethodHandlesTest revealed two bugs on x86_64.

Reviewed-by: never, jrose
2010-03-08 04:46:30 -08:00
Christian Thalinger
d1a6f819e6 6928839: JSR 292 typo in x86 _adapter_check_cast
There is a small typo in methodHandles_x86.cpp.

Reviewed-by: kvn
2010-02-23 17:46:29 +01:00
Vladimir Kozlov
fa2d360cd5 6910664: C2: java/util/Arrays/Sorting.java fails with DeoptimizeALot flag
Matcher::float_in_double should be true only when FPU is used for floats.

Reviewed-by: never, twisti
2010-02-19 10:04:16 -08:00
Vladimir Kozlov
9110d86267 Merge 2010-02-12 15:27:36 -08:00
Vladimir Kozlov
d4437819bd 6925249: assert(last_sp < (intptr_t*) interpreter_frame_monitor_begin(),"bad tos")
Fix assert since top deoptimized frame has last_sp == interpreter_frame_monitor_begin if there are no expressions.

Reviewed-by: twisti
2010-02-12 08:54:13 -08:00
Neo Jia
7d7887d46c 6587322: dtrace probe object__alloc doesn't fire in some situations on amd64
Fix misplaced probe point

Reviewed-by: rasbold, phh
2010-02-08 13:49:03 -05:00
Vladimir Kozlov
2fd8d35905 6923002: assert(false,"this call site should not be polymorphic")
Clear the total count when a receiver information is cleared.

Reviewed-by: never, jrose
2010-02-07 12:15:06 -08:00
Andrei Pangin
134e70e53b Merge 2010-02-04 15:50:59 -08:00
Christian Thalinger
82ce2c602b Merge 2010-02-04 03:34:05 -08:00
Hiroshi Yamauchi
688398edef 6921969: optimize 64 long multiply for case with high bits zero
Reviewed-by: never, twisti, kvn, rasbold
2010-02-03 15:56:37 -08:00
Vladimir Kozlov
0c27c5537e 6614597: Performance variability in jvm2008 xml.validation
Fix incorrect marking of methods as not compilable.

Reviewed-by: never
2010-02-01 16:49:49 -08:00