637 Commits

Author SHA1 Message Date
Jatin Bhateja
c2ec1085e1 8217561: X86: Add floating-point Math.min/max intrinsics
Implementation taking care of +/-0.0 and NaN which uses a specific pattern for reductions

Reviewed-by: aph, kvn, neliasso, sviswanathan, adinn
2019-03-07 15:27:42 +01:00
Claes Redestad
367ae10733 8220159: Optimize various RegMask operations by introducing watermarks
Reviewed-by: neliasso, thartmann
2019-03-05 16:39:18 +01:00
Vivek Deshpande
40031abde4 8220211: Small update to Fix generation of VNNI vector code by allowing adjacent LoadS nodes to be isomorphic (JDK-8216580)
Reviewed-by: kvn
2019-03-05 21:26:14 -08:00
Vivek Deshpande
8b57cdf5f8 8216580: Fix generation of VNNI vector code by allowing adjacent LoadS nodes to be isomorphic
Reviewed-by: kvn, thartmann, rraghavan
2019-03-05 14:07:30 -08:00
Jie Fu
0f2562d71d 8219919: RuntimeStub name lost with PrintFrameConverterAssembly
Reviewed-by: kvn
2019-03-01 10:00:03 -08:00
Vladimir Kozlov
211162fd5c 8219951: Build failure on Mac and Windows after JDK-8219922
Add missing parentheses.

Reviewed-by: dholmes
2019-02-28 17:16:40 -08:00
Claes Redestad
29d842b5a0 8219922: Simplify and optimize IndexSetIterator::next using count_trailing_zeros
Reviewed-by: kvn, neliasso
2019-02-28 22:11:46 +01:00
Roland Westrelin
7fd7a118da 8219335: "failed: unexpected type" assert failure in ConnectionGraph::split_unique_types() with unsafe accesses
Reviewed-by: thartmann, kvn
2019-02-18 17:41:31 +01:00
Vladimir Ivanov
d41611ebeb 8161334: C2: Cast nodes hinder memory alias analysis
Reviewed-by: kvn, thartmann
2019-02-14 15:27:46 -08:00
Vladimir Ivanov
40c61cce4b 8218874: C2: Unsafe to access PhaseIdealLoop outside of constructors
Reviewed-by: thartmann, kvn
2019-02-14 15:27:12 -08:00
Vladimir Ivanov
521039cc35 8218879: Keep track of memory accesses originated from Unsafe
Reviewed-by: thartmann
2019-02-14 15:27:12 -08:00
Nils Eliasson
0a5047a326 8087128: C2: Disallow definition split on MachCopySpill nodes
Reviewed-by: kvn
2019-02-14 14:31:32 +01:00
Claes Redestad
efc62ac6ec 8217383: Obsolete UseImplicitStableValues
Reviewed-by: shade, rkennke, vlivanov
2019-02-12 09:00:04 +01:00
Roland Westrelin
f88962f2d9 8217990: C2 UseOptoBiasInlining: load of markword optimized to 0 if running with -XX:-EliminateLocks
Reviewed-by: thartmann, mdoerr, rrich, kvn
2019-02-07 09:55:57 +01:00
Roland Westrelin
6c640e1831 8215483: Off heap memory accesses should be vectorized
Reviewed-by: neliasso, kvn
2018-12-18 09:29:39 +01:00
Vladimir Ivanov
f5a64c0001 8075052: Autobox elimination hinders loop unrolling
Reviewed-by: kvn
2019-02-04 17:35:36 -08:00
Vladimir Ivanov
f5458c5891 8188133: C2: Static field accesses in clinit can trigger deoptimizations
Reviewed-by: kvn
2019-02-04 17:35:35 -08:00
Vladimir Ivanov
3a94607c69 8218163: C2: Continuous deoptimization w/ Reason_speculate_class_check and Action_none
Reviewed-by: kvn, neliasso
2019-02-01 18:51:14 -08:00
Vladimir Ivanov
71759e3177 8217919: C2: Enable -XX:+AggressiveUnboxing by default
Reviewed-by: kvn, neliasso
2019-02-01 18:50:53 -08:00
Vladimir Ivanov
0a5a0b1a29 8217918: C2: -XX:+AggressiveUnboxing is broken
Reviewed-by: kvn
2019-02-01 18:50:22 -08:00
Vladimir Ivanov
ac3711e9cd 6986483: CHA: optimize calls through interfaces
Reviewed-by: neliasso, thartmann
2019-01-31 17:48:29 -08:00
Vladimir Ivanov
46a57587dc 8059241: C2: Excessive RemoveUseless passes during incremental inlining
Reviewed-by: roland, shade
2019-01-31 17:48:25 -08:00
Robbin Ehn
046a1f0ff7 8218041: Assorted wrong/missing includes
Reviewed-by: dholmes, kbarrett, stefank, shade
2019-01-31 10:31:39 +01:00
Claes Redestad
bc8ecd924c 8217869: Add count_leading_zeros utility
Reviewed-by: neliasso, thartmann
2019-01-28 23:00:31 +01:00
Vladimir Ivanov
23931d94f7 8192001: C2: inlining through dispatching MH linkers ignores speculative type of the receiver
Reviewed-by: thartmann, roland
2019-01-25 13:37:12 -08:00
Vladimir Ivanov
dbf977da1d 8191998: C2: inlining through MH linkers drops speculative part of argument types
Reviewed-by: roland, thartmann, kvn
2019-01-25 13:37:10 -08:00
Vladimir Ivanov
d2552c3e55 8217760: C2: Missing symbolic info on a call from intrinsics when invoked through MethodHandle
Reviewed-by: thartmann, roland
2019-01-25 13:37:08 -08:00
Jesper Wilhelmsson
fd21613d59 Merge 2019-01-25 18:12:06 +01:00
Claes Redestad
466a955633 8217782: Spill detection broken after JDK-8217716
Reviewed-by: shade, thartmann
2019-01-25 14:10:28 +01:00
Jamsheed Mohammed C M
25bd20f5d9 8213825: assert(false) failed: Non-balanced monitor enter/exit! Likely JNI locking
Skip sfpt optimization for Load is removed for Java Object's Markword Load.

Reviewed-by: kvn, dlong
2019-01-23 23:24:10 -08:00
Coleen Phillimore
13dd3cb24e 8216136: Take Compile_lock for SystemDictionary::_modification_counter with safepoint check
Transition compiler thread from native to VM state to check the Compile_lock with safepoint always.

Reviewed-by: dlong, eosterlund, dholmes
2019-01-24 08:44:26 -05:00
Claes Redestad
689f7accd4 8217716: Remove dead code in PhaseChaitin
Reviewed-by: thartmann
2019-01-24 14:43:56 +01:00
Jesper Wilhelmsson
c6e45ea87c Merge 2019-01-23 19:56:28 +01:00
Tao Ji
cf554816d1 8217359: C2 compiler triggers SIGSEGV after transformation in ConvI2LNode::Ideal
Reviewed-by: thartmann
2019-01-21 13:31:42 +08:00
Aleksey Shipilev
17341dad94 8217467: Access barriers are missing in C2 intrinsic for Base64
Reviewed-by: thartmann, roland, rkennke, kvn
2019-01-22 21:18:25 +01:00
Tobias Hartmann
930c19bcc2 8217230: assert(t == t_no_spec) failure in NodeHash::check_no_speculative_types()
Remove dead node from C2 IR.

Reviewed-by: roland, neliasso
2019-01-22 18:25:56 +01:00
Tao Ji
3626d59867 8217359: C2 compiler triggers SIGSEGV after transformation in ConvI2LNode::Ideal
Reviewed-by: thartmann
2019-01-21 13:31:42 +08:00
Claes Redestad
199b29c58e 8217629: RegMask::find_lowest_bit can reuse count_trailing_zeros utility
Reviewed-by: thartmann, neliasso
2019-01-23 17:25:25 +01:00
Claes Redestad
649340be11 8217519: Improve RegMask population count calculation
Reviewed-by: thartmann, neliasso, kvn
2019-01-23 10:01:21 +01:00
Jesper Wilhelmsson
bc920bd00d Merge 2019-01-22 19:56:19 +01:00
Vladimir Ivanov
731e728ece 8215757: C2: PhaseIdealLoop::create_new_if_for_predicate() computes wrong IDOM
Reviewed-by: kvn, roland
2019-01-15 16:41:17 -08:00
Vladimir Ivanov
8f16189ab3 8217399: Backout 8217358
Reviewed-by: kvn
2019-01-18 17:34:31 -08:00
Vladimir Ivanov
91646018c8 8217358: Optimized build is broken by Shenandoah changes
Reviewed-by: shade
2019-01-18 13:22:10 -08:00
Jesper Wilhelmsson
cda0d67617 Merge 2019-01-16 20:53:09 +01:00
Jesper Wilhelmsson
a8c5f1e59a Merge 2019-01-15 22:54:09 +01:00
Jesper Wilhelmsson
528bc73ca4 Merge 2019-01-14 23:05:26 +01:00
Roland Westrelin
70ba959a4b 8216549: Mismatched unsafe access to non escaping object fails
Reviewed-by: vlivanov, kvn, thartmann
2019-01-11 10:03:00 +01:00
Vivek Deshpande
996968d480 8216050: Superword optimization fails with assert(0 <= i && i < _len) failed: illegal index
Fix for the crash by matching the operands by swapping to right positions.

Reviewed-by: thartmann, kvn
2019-01-15 11:19:14 -08:00
Patric Hedlin
a17df8d45b 8210392: assert(Compile::current()->live_nodes() < Compile::current()->max_node_limit()) failed: Live Node limit exceeded limit
Avoid excessive split-if.

Reviewed-by: thartmann, neliasso
2018-12-18 10:12:28 +01:00
Roland Westrelin
6bbfc1d2a8 8216135: C2 assert(!had_error) failed: bad dominance
Reviewed-by: thartmann, kvn
2019-01-14 15:07:22 +01:00