1150 Commits

Author SHA1 Message Date
Roland Westrelin
404fc5caa8 8134974: 8130847 broken with loop predicates
Pinned eliminated arraycopy loads in uncommon trap path for loop predicates may need to be moved

Reviewed-by: kvn
2015-09-08 19:19:08 +02:00
Roland Westrelin
8dd169a71f 8135069: C2 replaces range checks by unsigned comparison with -1
I < 0 || i > -1 wrongly folded as i >u -1

Reviewed-by: kvn
2015-09-11 16:56:56 +02:00
Tobias Hartmann
6479241f4a 8135252: IdealLoopTree::dump_head() prints negative trip count
IdealLoopTree::dump_head() should not cast float to int.

Reviewed-by: kvn
2015-09-14 10:00:26 +02:00
Igor Veresov
e88940fae6 Merge 2015-09-10 17:56:43 -07:00
Michael Berg
e75f5a5cde 8135028: support for vectorizing double precision sqrt
Reviewed-by: kvn, twisti
2015-09-09 10:34:17 -07:00
Jesper Wilhelmsson
1736e104a1 Merge 2015-09-08 16:10:37 +02:00
Nils Eliasson
559bf7ef6e 8135067: Preparatory refactorings for compiler control
Extract CompileTask and clean up

Reviewed-by: roland
2015-09-04 12:47:57 +02:00
Ahmed Khawaja
d7b8032741 8132081: C2 support for Adler32 on SPARC
Add C2 instrinsic support for Adler32 checksum on SPARC.

Reviewed-by: kvn
2015-09-03 15:03:12 -07:00
Dmitry Samersoff
6ed285af0a Merge 2015-08-31 21:46:33 +03:00
Roland Westrelin
ed9e8b9ff2 8134031: Incorrect JIT compilation of complex code with inlining and escape analysis
Bad rewiring of memory edges when we split unique types during EA

Reviewed-by: kvn
2015-08-31 17:20:08 +02:00
Roland Westrelin
7ef7c96fde 8134468: Lucene test failures with 32 bit JDK 9b78, Server compiler
Test that checks whether an array load falls into the range of an arraycopy is incorrect on 32bits

Reviewed-by: iveresov, kvn
2015-09-02 10:00:27 +02:00
Aleksey Shipilev
7c7692856a 8134758: Final String field values should be trusted as stable
Reviewed-by: kvn, thartmann
2015-09-01 19:48:10 +03:00
Aleksey Shipilev
e3007b79ad 8076758: new StringBuilder().append(String).toString() should be recognized by OptimizeStringConcat
Reviewed-by: kvn, thartmann
2015-09-01 12:57:41 +03:00
Roland Westrelin
9dcbe322e0 8134288: compiler/runtime/6859338/Test6859338.java crashes in PhaseIdealLoop::try_move_store_after_loop
Store nodes may not have a control if used to update profiling

Reviewed-by: kvn
2015-08-26 12:43:15 +02:00
Roland Westrelin
8942ef410f 8134321: tools/pack200/Pack200Test.java crashes in the VM PIT jdk9 b79
Code that capture field values of eliminated allocation at a safepoint when there's an arraycopy behind a Phi is broken

Reviewed-by: kvn
2015-08-26 09:49:37 +02:00
Kim Barrett
7706e36194 8072817: CardTableExtension kind() should be BarrierSet::CardTableExtension
Use BarrierSet::CardTableForRS where needed, and update concrete bs tags.

Reviewed-by: jwilhelm, jmasa
2015-08-18 17:48:35 -04:00
Roland Westrelin
b7b1b2778c 8131969: jit/FloatingPoint/gen_math/Loops05 assert(2 <= size && size <= 16) failed: update low bits table
Assert in register allocation code when vector Phi for a loop is processed because code assumes all inputs already processed

Reviewed-by: kvn
2015-08-18 16:10:34 +02:00
Zoltan Majo
0d7ee212ea 8133625: src/share/vm/opto/compile.hpp:96: error: integer constant is too large for ‘long’ type
Wrap constant causing the failure into into CONST64(). Update comments.

Reviewed-by: kvn
2015-08-19 11:59:00 +02:00
Roland Westrelin
96b004cd82 8080289: Intermediate writes in a loop not eliminated by optimizer
Move Stores out of loop (after or before) when possible

Reviewed-by: kvn, vlivanov
2015-07-29 17:25:04 +02:00
Roland Westrelin
df82d96834 8133599: Unsafe.getAndSetObject() is no longer intrinsified by c2
Off by 1 error in c2 intrinsic filtering logic

Reviewed-by: dlong, kvn, shade
2015-08-14 00:28:45 +02:00
Roland Westrelin
0baf2f7e8a 8130847: Cloned object's fields observed as null after C2 escape analysis
Eliminated instance/array written to by an array copy variant must be correctly initialized when reallocated at a deopt

Reviewed-by: kvn, vlivanov
2015-08-15 02:54:18 +02:00
Aleksey Shipilev
63a173e2c4 8019968: Reference CAS induces GC store barrier even on failure
Reviewed-by: kvn, adinn, roland
2015-08-12 09:58:39 +03:00
Vlad Ureche
645a55a98f 8011858: Use Compile::live_nodes() instead of Compile::unique() in appropriate places
Reviewed-by: kvn, vlivanov
2015-08-10 10:39:19 -07:00
Roland Westrelin
02ae6d2a31 Merge 2015-08-04 13:41:09 +02:00
Zoltan Majo
26cd440c55 8132457: Unify command-line flags controlling the usage of compiler intrinsics
Cleanup processing of command-line flags controlling intrinsics.

Reviewed-by: kvn
2015-08-03 09:39:29 +02:00
Jaroslav Bachorik
39aea4789c Merge 2015-07-31 12:13:57 +02:00
Zoltan Majo
422cd18f23 8130832: Extend the WhiteBox API to provide information about the availability of compiler intrinsics
Add a new method, sun.hotspot.WhiteBox.isIntrinsicAvailable, that can be used to determine if an intrinsic is available.

Reviewed-by: kvn, jrose
2015-07-28 19:20:42 +02:00
Sangheon Kim
a13fe250b0 8130459: Add additional validation after heap creation
Some PLAB related flags' validation can happen after heap creation. Introduced additional stage of validation check.

Reviewed-by: coleenp, dholmes, kbarrett, gziemski, ecaspole, ddmitriev
2015-07-27 13:56:26 -07:00
Roland Westrelin
51ddedd5c7 Merge 2015-07-23 19:11:28 +02:00
Vladimir Ivanov
259aeb3399 8131675: EA fails with assert(false) failed: not unsafe or G1 barrier raw StoreP
Reviewed-by: roland
2015-07-22 20:23:53 +03:00
Daniel D. Daugherty
d7f565d9eb 8075171: Contended Locking fast notify bucket
JEP-143/JDK-8073165 Contended Locking fast notify bucket

Co-authored-by: Dave Dice <dave.dice@oracle.com>
Co-authored-by: Karen Kinnear <karen.kinnear@oracle.com>
Reviewed-by: dholmes, acorn, dice, dcubed
2015-07-21 07:28:37 -07:00
Goetz Lindenmaier
ad601cca0c 8131676: Fix warning 'negative int converted to unsigned' after 8085932
Also fix 64-bit constant added in 8076276.

Reviewed-by: kvn
2015-07-16 14:18:13 +02:00
Vladimir Kozlov
10f06d081d Merge 2015-07-14 18:58:38 +02:00
Jan Civlin
2a4f18ccbd 8085932: Fixing bugs in detecting memory alignments in SuperWord
Reviewed-by: kvn
2015-07-14 09:55:22 -07:00
Vladimir Ivanov
92d8281194 8078629: VM should constant fold Unsafe.get*() loads from final fields
Reviewed-by: kvn, jrose, psandoz
2015-07-14 06:44:50 -07:00
Vladimir Kozlov
b5284a93ce 8129920: Vectorized loop unrolling
Optimize loop opts for vectorizible loops.

Reviewed-by: kvn, roland
2015-07-10 11:59:09 -07:00
Daniel D. Daugherty
8dbfda6628 Merge 2015-07-09 14:35:13 -07:00
Goetz Lindenmaier
07c7774cd7 8086069: Adapt runtime calls to recent intrinsics to pass ints as long
Remove CCallingConventionRequiresIntsAsLongs from shared code and push functionality to native wrapper. Less optimal but more flexible.

Reviewed-by: jrose, kvn
2015-06-29 15:30:55 +02:00
Zoltan Majo
9245cdc214 8076112: Add @HotSpotIntrinsicCandidate annotation to indicate methods for which Java Runtime has intrinsics
Annotate possibly intrinsified methods with @HotSpotIntrinsicCandidate. Add checks omitted by intrinsics to the library code. Add CheckIntrinsics flags to check consistency of intrinsics.

Reviewed-by: jrose, kvn, thartmann, vlivanov, abuckley, darcy, ascarpino, briangoetz, alanb, aph, dnsimon
2015-07-03 07:25:03 +02:00
Andrew Haley
917f70414f Merge 2015-07-02 11:12:59 +01:00
Vladimir Kozlov
d71bb8c72b 8129893: 8129094 fix is incomplete
Move old and add new primitive type check.

Reviewed-by: iveresov
2015-06-30 12:12:18 -07:00
Andrew Haley
52b991b411 8130150: Implement BigInteger.montgomeryMultiply intrinsic
Add montgomeryMultiply intrinsics

Reviewed-by: kvn
2015-06-16 17:31:53 +01:00
James Cheng
e2533553f6 8073583: C2 support for CRC32C on SPARC
Reviewed-by: jrose, kvn
2015-06-29 00:10:01 -07:00
Vladimir Kozlov
0b9dfebfa4 Merge 2015-06-25 09:48:50 -07:00
Jesper Wilhelmsson
d60d6fdf40 Merge 2015-06-24 13:38:01 +02:00
Vladimir Ivanov
90a42c2491 8074551: GWT can be marked non-compilable due to deopt count pollution
Reviewed-by: kvn
2015-06-11 14:19:40 +03:00
Vladimir Kozlov
d62598136b 8129094: assert(is_java_primitive(bt)) failed: only primitive type vectors
Ignored non-primitive type memory operation regardless its (or its inputs) control.

Reviewed-by: roland, mcberg
2015-06-18 11:09:29 -07:00
Anthony Scarpino
c4c528df14 8073108: Use x86 and SPARC CPU instructions for GHASH acceleration
Reviewed-by: kvn, jrose
2015-06-17 17:48:25 -07:00
Michael Berg
7c7b91845f 8080325: SuperWord loop unrolling analysis
Determine loop unroll factor based on supported vectors sizes.

Reviewed-by: roland, kvn
2015-06-16 16:10:36 -07:00
Coleen Phillimore
97f69e8b42 Merge 2015-06-19 13:03:58 +00:00