Roland Westrelin
74f8cc939b
8139750: [BACKOUT] Elide more final field's write memory barrier with escape analysis result
...
Reviewed-by: kvn
2015-10-16 15:48:18 +02:00
Hui Shi
d8a864cd68
8138956: Elide more final field's write memory barrier with escape analysis result
...
Membar for final/stable fields eliminated if possible
Reviewed-by: roland, mdoerr, enevill, aph
2015-10-15 09:40:45 +02:00
Ed Nevill
ffd60d555b
8139259: aarch64: jtreg test TestLogSum segvs after 8132207
...
Fix jump to 0 caused by uninitialised _dexp in 8132207
Reviewed-by: roland, kvn
2015-10-13 09:40:39 +02:00
Jan Civlin
115afda88e
8136725: Provide utility for creation a counted loop reserve copy (clone)
...
Make it easier to revert to the original loop should that be needed
Reviewed-by: kvn
2015-10-09 12:17:58 -07:00
Zoltan Majo
fc2a5e9d53
8078554: Compiler: implement ranges (optionally constraints) for those flags that have them missing
...
Add range check or constraint where necessary.
Reviewed-by: roland, thartmann
2015-10-09 14:21:26 +02:00
Christian Thalinger
16526e000e
8136421: JEP 243: Java-Level JVM Compiler Interface
...
Reviewed-by: ihse, alanb, roland, coleenp, iveresov, kvn, kbarrett
2015-10-08 12:49:30 -10:00
Zoltan Majo
fab17a4e67
8137160: Use Compile::live_nodes instead of Compile::unique() in appropriate places -- followup
...
Change two code locations to use live_nodes() instead of unique() for allocating memory. Adjust comments.
Reviewed-by: kvn
2015-10-08 12:10:19 +02:00
Vivek R Deshpande
5a633b1cbd
8132207: update for x86 exp in the math lib
...
Add new java.lang.Math() intrinsics from x86
Reviewed-by: kvn, iveresov
2015-10-05 20:02:40 -07:00
Felix Yang
12cba200a3
8138583: aarch64: add support for vectorizing fabs/fneg
...
Reviewed-by: aph, roland
2015-09-30 04:35:39 -04:00
Roland Westrelin
f8abd0e843
8136820: Generate better code for some Unsafe addressing patterns
...
Reshape address computation to move invariant part out of loops
Reviewed-by: kvn
2015-09-17 16:53:42 +02:00
Roland Westrelin
92af9b015c
8136926: phi == NULL assert in PhaseIdealLoop::try_move_store_after_loop
...
Multiple phis on same slice are possible in a loop
Reviewed-by: kvn, mcberg
2015-09-22 15:25:34 +02:00
Hui Shi
0f4b248b18
8136596: Remove aarch64: MemBarRelease when final field's allocation is NoEscape or ArgEscape
...
Elide MemBar when AllocateNode _is_non_escaping
Reviewed-by: kvn, roland
2015-09-21 10:51:33 +02:00
Nils Eliasson
5ca8983920
8135068: Extract method matchers from CompilerOracle
...
Ecapsulate code to enable reuse
Reviewed-by: roland, kvn
2015-09-18 10:11:11 +02:00
Tobias Hartmann
f298249547
8134739: compiler/loopopts/superword/TestVectorizationWithInvariant crashes in loop opts
...
Bail out of superword optimization if loop was removed (i.e., if zero-trip Opaque1Node was removed).
Reviewed-by: kvn, roland
2015-09-17 08:08:47 +02:00
Michael Berg
d49d1ea740
8134802: LCM register pressure scheduling
...
Calculate register pressure in a block to help instructions scheduling.
Reviewed-by: kvn, dlong
2015-09-16 13:16:17 -07:00
Vladimir Kozlov
a402bebf6e
Merge
2015-09-16 20:33:16 +02:00
Vladimir Kozlov
44a4201adc
8136406: Remove ZapDeadCompiledLocals code
...
Dead code elimination.
Reviewed-by: roland, twisti
2015-09-15 11:04:11 -07:00
Roland Westrelin
c55d212196
8136461: PhaseIdealLoop::try_move_store_before_loop() may bypass early loop exit
...
PhaseIdealLoop::try_move_store_before_loop() needs to check for early loop exit before candidate Stores
Reviewed-by: kvn
2015-09-15 13:08:43 +02:00
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