1500 Commits

Author SHA1 Message Date
Vladimir Kozlov
5c529d31ce 8185013: Disable subword vector analysis optimization until 8184995 is fixed
Reviewed-by: dcubed
2017-07-20 15:53:39 -07:00
Vivek Deshpande
91e715f9f3 8175096: Analyse subword in the loop to set maximum vector size
Reviewed-by: kvn
2017-07-19 08:29:44 -07:00
Jesper Wilhelmsson
efd1054686 8182299: Enable disabled clang warnings, build on OSX 10 + Xcode 8
8182656: Make the required changes in GC code to build on OSX 10 + Xcode 8
8182657: Make the required changes in Runtime code to build on OSX 10 + Xcode 8
8182658: Make the required changes in Compiler code to build on OSX 10 + Xcode 8

Co-authored-by: Paul Hohensee <hohensee@amazon.com>
Reviewed-by: jwilhelm, ehelin, phh
2017-07-06 01:50:26 +02:00
Stefan Karlsson
a18f1c2d58 8183552: Move align functions to align.hpp
Reviewed-by: stuefe, pliden
2017-07-05 11:33:17 +02:00
Stefan Karlsson
d37b9c1f8d 8178500: Replace usages of round_to and round_down with align_up and align_down
Reviewed-by: rehn, tschatzl
2017-04-13 09:57:51 +02:00
Stefan Karlsson
dbd3b5a79e 8178499: Remove _ptr_ and _size_ infixes from align functions
Reviewed-by: rehn, tschatzl
2017-07-04 15:58:10 +02:00
Stefan Karlsson
0fcf645cff 8178489: Make align functions more type safe and consistent
Reviewed-by: mgerdin, rehn
2017-04-12 17:53:18 +02:00
Coleen Phillimore
7225e6008d 8182848: Some functions misplaced in debug.hpp
Moved to vmError.hpp,cpp where they seemed more appropriate

Reviewed-by: stefank, stuefe
2017-06-28 19:12:58 -04:00
Jesper Wilhelmsson
3c874cfeb3 Merge 2017-06-22 00:51:07 +02:00
Lana Steuck
63253f80e8 Merge 2017-06-14 20:05:32 +00:00
Roland Westrelin
a9c2bc6517 8179678: ArrayCopy with same src and dst can cause incorrect execution or compiler crash
Replacing load on dst with load on src only valid if copy doesn't modify src element to load

Reviewed-by: kvn, thartmann
2017-06-02 09:08:34 +02:00
Lana Steuck
b415169648 Merge 2017-05-31 17:45:57 +00:00
Vladimir Ivanov
5d2b14d198 8179882: C2: Stale control info after cast node elimination during loop optimization pass
Reviewed-by: kvn, roland
2017-05-30 21:35:21 +03:00
Tobias Hartmann
d3baf34118 8180575: Null pointer dereference in LoadNode::Identity()
Fixed a missing null check on the return value of AddPNode::Ideal_base_and_offset() found by Parfait.

Reviewed-by: kvn
2017-05-22 09:23:59 +02:00
Tobias Hartmann
4b93f11738 8180576: Null pointer dereference in Matcher::xform()
Fixed a missing null check on n->in(0) found by Parfait.

Reviewed-by: kvn
2017-05-22 09:18:12 +02:00
Tobias Hartmann
1d1141fbdf 8180511: Null pointer dereference in Matcher::ReduceInst()
Fixed a missing null check on the return value of MachNodeGenerator() found by Parfait.

Reviewed-by: kvn
2017-05-22 09:17:32 +02:00
Tobias Hartmann
66fb50e7a2 8180617: Null pointer dereference in InitializeNode::complete_stores
Fixed a missing null check on the return value of InitializeNode::allocation() found by Parfait.

Reviewed-by: zmajo
2017-05-22 09:16:46 +02:00
Roland Westrelin
698444f968 8181211: C2: Use profiling data to optimize on/off heap unsafe accesses
Reviewed-by: kvn
2017-06-09 10:51:52 +02:00
Tobias Hartmann
620b398ba3 8181741: C2 compilation fails with "assert(i<_max) failed: oob"
PhaseIdealLoop should not use type() or type_or_null().

Reviewed-by: roland, kvn
2017-06-09 09:27:10 +02:00
Jesper Wilhelmsson
a41f617837 Merge 2017-06-08 20:28:04 +02:00
Vivek Deshpande
4fd6f92702 8181616: FMA Vectorization on x86
Reviewed-by: kvn
2017-06-07 13:09:46 -07:00
Roland Westrelin
9bcec9e523 8176506: C2: loop unswitching and unsafe accesses cause crash
Reviewed-by: vlivanov, mcberg, kvn, simonis
2017-05-29 18:17:49 +02:00
Lana Steuck
e1cda8ad72 Merge 2017-05-11 23:21:34 +00:00
Ron Pressler
96d03a13e6 8159995: Rename internal Unsafe.compare methods
Reviewed-by: psandoz, dholmes
2017-05-11 12:55:56 -07:00
Goetz Lindenmaier
8bd00f84a5 8179618: Fixes for range of OptoLoopAlignment and Inlining flags
OptoLoopAlignment must be multiple of NOP size. Inlining flags must not exceed WarmCallInfo::MAX_VALUE().

Reviewed-by: kvn, stuefe
2017-04-28 14:34:24 +02:00
Vladimir Kozlov
063286a618 Merge 2017-05-12 13:14:25 -07:00
Roland Westrelin
aa386ac45b 8179070: nashorn+octane's box2d causes c2 to crash with "Bad graph detected in compute_lca_of_uses"
CiTypeFlow speculates field is null but parsing uses non null constant because of concurrent class initialization

Reviewed-by: thartmann
2017-04-25 09:37:24 +02:00
Igor Veresov
34dec39bc2 8178047: Aliasing problem with raw memory accesses
Require equal bases when unaliasing offsets for raw accesses

Reviewed-by: kvn
2017-04-19 18:02:26 -07:00
Coleen Phillimore
1457155505 8168699: Validate special case invocations
Reviewed-by: acorn, kvn, lfoltan, ctornqvi, ahgross, vlivanov
2016-12-01 14:21:31 -05:00
Dean Long
f274b01820 8158168: Missing bounds checks for some String intrinsics
Reviewed-by: vlivanov, thartmann, sherman
2017-04-12 16:36:13 -04:00
Jesper Wilhelmsson
aa49aa7eab Merge 2017-03-30 19:55:04 +02:00
Tobias Hartmann
3e59334eef 8177095: Range check dependent CastII/ConvI2L is prematurely eliminated
Disabled narrowing of range check dependent CastIIs (either through the CastII(AddI) optimization or through CastIINode::Ideal).

Reviewed-by: vlivanov, kvn
2017-03-27 10:12:29 +02:00
Phil Race
5506a3b126 8177346: hotspot change for 8176513 breaks jdk9 build on Ubuntu 16.04
Reviewed-by: dholmes, kvn, vlivanov
2017-03-24 08:56:04 -07:00
Martin Doerr
16a222c4ff 8176518: C2: Invalid ImplicitNullChecks with non-protected heap base
Avoid generating implicit null checks if heap base is not protected

Reviewed-by: zmajo
2017-03-20 11:32:30 +01:00
Roland Westrelin
23ef045ab2 8176513: Poor code quality for ByteBuffers
Relaxes the condition under which MemBarCPUOrder nodes are added around unsafe accesses.

Reviewed-by: vlivanov, kvn, jrose
2017-03-15 18:18:04 -07:00
Volker Simonis
1cd78903a8 8176505: Wrong assertion 'should be an array copy/clone' in arraycopynode.cpp
Reviewed-by: thartmann, roland
2017-03-13 16:07:17 +01:00
Zoltan Majo
b3914e7e21 8175340: Possible invalid memory accesses due to ciMethodData::bci_to_data() returning NULL
Check values returned by ciMethodData::bci_to_data() where necessary.

Reviewed-by: kvn
2017-03-09 14:27:21 +01:00
Rahul Raghavan
b2783bb80a 8175345: Reported null pointer dereference defect groups
Added required explicit NULL checks

Reviewed-by: thartmann, kvn
2017-03-09 00:16:51 -08:00
Nils Eliasson
de10f56d52 8164954: split_if creates empty phi and region nodes
Don't split if all edges will be moved to new phi

Reviewed-by: kvn, vlivanov
2017-03-06 14:08:52 +01:00
Roland Westrelin
6a5e6f2ae1 8174164: SafePointNode::_replaced_nodes breaks with irreducible loops
Reviewed-by: kvn
2017-02-15 17:26:37 -08:00
Roman Kennke
96846a4105 8172434: CompareAndExchangeObject inserts two pre-barriers
Reviewed-by: kvn
2017-02-14 12:31:11 -08:00
Vladimir Ivanov
19f9a33953 8174721: C1: Inlining through MH invokers/linkers in unreachable code is unsafe
Reviewed-by: iveresov
2017-02-10 20:45:39 +03:00
Dmitry Chuyko
1acb306859 8166110: Inlining through MH invokers/linkers in unreachable code is unsafe
Reviewed-by: vlivanov
2017-02-09 19:00:48 +03:00
Rahul Raghavan
a44e07e4b3 8144484: assert(no_dead_loop) failed: dead loop detected
Bailout early without splitting Phi through memory merges if TOP inputs present for Phi Nodes

Reviewed-by: thartmann, kvn
2017-02-03 00:46:58 -08:00
Vladimir Ivanov
81e25c58fb 8173404: C2: wrong nmethod dependency can be recorded for CallSite.target
Reviewed-by: kvn
2017-01-30 16:04:22 +03:00
Roland Westrelin
9b352ebabe 8173147: [ctw] fails during compilation of sun.security.krb5.internal.crypto.RsaMd5DesCksumType::calculateKeyedChecksum with " graph should be schedulable"
Loads generated at uncommon trap from eliminated arraycopy have incorrect memory state

Reviewed-by: thartmann
2017-01-24 09:40:05 +01:00
Tobias Hartmann
a84b66b517 8172850: Anti-dependency on membar causes crash in register allocator due to invalid instruction scheduling
Regression test and additional asserts. The problem is fixed by 8087341.

Reviewed-by: kvn
2017-01-25 07:05:38 +01:00
Tobias Hartmann
0917fde85d 8173195: [BACKOUT] 8087341: C2 doesn't optimize redundant memory operations with G1
Backing out 8087341 due to 8172850. Will be re-implemented with 8173196.

Reviewed-by: kvn
2017-01-25 07:03:26 +01:00
Tobias Hartmann
a6092584f9 8172884: TraceOptoPipelining and TraceOptoOutput are broken
Compiler Control code needs not set the default values for the directive according to the flag value.

Reviewed-by: neliasso, redestad
2017-01-18 08:54:29 +01:00
Claes Redestad
450472a24a 8172169: Re-examine String field optionality
Reviewed-by: kvn, thartmann
2017-01-03 21:36:05 +01:00