421 Commits

Author SHA1 Message Date
Vladimir Ivanov
a6daef527e 8234923: Missed call_site_target nmethod dependency for non-fully initialized ConstantCallSite instance
Reviewed-by: jrose
2019-12-03 20:13:21 +03:00
Vladimir Ivanov
c7bc0f7a12 8231430: C2: Memory stomp in max_array_length() for T_ILLEGAL type
Reviewed-by: kvn, thartmann
2019-12-03 20:13:16 +03:00
Nils Eliasson
6230791e9e 8234520: ZGC: C2: Oop instance cloning causing skipped compiles
Reviewed-by: pliden, vlivanov
2019-11-29 11:26:25 +01:00
Patric Hedlin
f054a79881 8220376: C2: Int >0 not recognized as !=0 for div by 0 check
Reviewed-by: neliasso, vlivanov, mdoerr
2019-11-15 16:39:08 +01:00
Vladimir Ivanov
b89d2fd169 8234403: C2: Enable CallSite.target updates in constructors
Reviewed-by: psandoz, kvn
2019-11-26 16:09:21 +03:00
Stefan Karlsson
0ad50c2b5c 8234740: Harmonize parameter order in Atomic - cmpxchg
Reviewed-by: rehn, dholmes
2019-11-25 12:33:15 +01:00
Thomas Schatzl
9915f88688 8233702: Introduce helper function to clamp value to range
Reviewed-by: sjohanss, kbarrett
2019-11-22 10:03:38 +01:00
Claes Redestad
6f1f675324 8234003: Improve IndexSet iteration
Reviewed-by: neliasso, thartmann
2019-11-14 15:24:35 +01:00
Leo Korinth
1fc67ab002 8232365: Implementation for JEP 363: Remove the Concurrent Mark Sweep (CMS) Garbage Collector
Reviewed-by: kbarrett, tschatzl, erikj, coleenp, dholmes
2019-11-13 11:37:29 +01:00
Tobias Hartmann
7ba4fc4722 8233656: assert(d->is_CFG() && n->is_CFG()) failed: must have CFG nodes
Explicitly handle ProjNodes with TOP input.

Reviewed-by: kvn, vlivanov
2019-11-13 08:43:35 +01:00
Erik Österlund
8a8b35154b 8233506: ZGC: the load for Reference.get() can be converted to a load for strong refs
Reviewed-by: thartmann, neliasso, pliden
2019-11-12 09:25:39 +00:00
Tobias Hartmann
1833584f92 8233529: loopTransform.cpp:2984: Error: assert(p_f->Opcode() == Op_IfFalse) failed
Strengthened asserts in locate_pre_from_main() and added a check for is_main_no_pre_loop().

Reviewed-by: kvn, vlivanov
2019-11-12 10:16:04 +01:00
Christian Hagedorn
173dae8bc6 8229694: JVM crash in SWPointer during C2 OSR compilation
Handle the case where there is only 1 pack and no operations left when calling SuperWord::find_align_to_ref() to find the best alignment again.

Reviewed-by: kvn, vlivanov, thartmann
2019-11-11 10:41:03 +01:00
Jorn Vernee
d405f6abb6 8233389: Add PrintIdeal to compiler directives
Add PrintIdeal as a compiler directive in order to enable PrintIdeal for only a single method.

Reviewed-by: roland, neliasso, vlivanov, thartmann
2019-11-08 10:55:14 +01:00
Tobias Hartmann
f225f7cd0b 8233788: Remove useless asserts in PhaseCFG::insert_anti_dependences
Removed useless asserts.

Reviewed-by: kvn
2019-11-08 09:16:48 +01:00
Claes Redestad
12adeca887 8233708: VectorSet cleanup
Reviewed-by: neliasso, shade, thartmann
2019-11-07 12:12:39 +01:00
Erik Österlund
f07d377d6f 8233073: Make BitMap accessors more memory ordering friendly
Reviewed-by: kbarrett, pliden
2019-11-07 10:28:29 +00:00
Roland Westrelin
afd91fd320 8232539: SIGSEGV in C2 Node::unique_ctrl_out
Reviewed-by: thartmann, kvn
2019-10-22 11:55:58 +02:00
Nils Eliasson
3ca7e3f6ff 8232896: ZGC: Enable C2 clone intrinsic
Reviewed-by: pliden, kvn
2019-10-31 17:16:36 +01:00
David Holmes
1d50b2761c 8229516: Thread.isInterrupted() always returns false after thread termination
Reviewed-by: dnsimon, sspitsyn, dcubed, alanb
2019-11-03 18:02:29 -05:00
Patric Hedlin
902858e3ce 8231565: More node budget asserts in fuzzed tests
Reviewed-by: neliasso, thartmann
2019-10-23 12:51:53 +02:00
Aleksey Shipilev
bbc4e0d999 8232882: GCC 4.8.5 build failure after JDK-8211073
Reviewed-by: thartmann
2019-10-23 17:35:32 +02:00
Christian Hagedorn
465f4c1200 8231412: C2: InitializeNode::detect_init_independence() bails out on simple IR shapes
Avoids early bailout of capturing a field store to remove unnecessary zeroing in simple methods containing only non-escaping objects.

Reviewed-by: roland, thartmann
2019-10-23 12:21:32 +02:00
Michihiro Horie
f004d45d3d 8231649: PPC64: Intrinsics for Math.ceil, floor, rint on Power
Reviewed-by: mdoerr, vlivanov
2019-10-22 21:26:45 -05:00
Huang Wang
4fb2bb554d 8231988: Unexpected test result caused by C2 IdealLoopTree::do_remove_empty_loop
Duplicate cmp node in empty loop if it has other users

Co-authored-by: Tuo Xie <xietuo@huawei.com>
Reviewed-by: neliasso, thartmann
2019-10-11 16:52:18 +08:00
Jie Fu
179aab2fe2 8232151: Minimal VM build broken after JDK-8232050
Reviewed-by: dholmes, clanger
2019-10-11 17:49:25 +08:00
Tom Rodriguez
4a41f86a39 8231586: enlarge encoding space for OopMapValue offsets
Reviewed-by: dlong
2019-10-09 16:35:44 -07:00
Erik Österlund
42885307f6 8230565: ZGC: Redesign C2 load barrier to expand on the MachNode level
Co-authored-by: Per Liden <per.liden@oracle.com>
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Nils Eliasson <nils.eliasson@oracle.com>
Reviewed-by: pliden, stefank, neliasso
2019-10-09 12:30:06 +00:00
Richard Reingruber
a683592254 8230677: Should disable Escape Analysis if JVMTI capability can_get_owned_monitor_info was taken
Reviewed-by: sspitsyn, dholmes, kvn
2019-10-08 15:30:39 +02:00
Roland Westrelin
703760bbec 8231550: C2: ShouldNotReachHere() in verify_strip_mined_scheduling
Reviewed-by: vlivanov, thartmann
2019-10-02 17:32:08 +02:00
Roland Westrelin
a81dcf4dbf 8231620: assert(bol->is_Bool()) crash during split if due to FastLockNode
Reviewed-by: vlivanov, thartmann
2019-10-01 10:28:12 +02:00
Jatin Bhateja
d3ca3a02ff 8226721: Missing intrinsics for Math.ceil, floor, rint
Reviewed-by: neliasso, vlivanov, ecaspole
2019-10-01 11:43:10 +02:00
Christian Hagedorn
08f652aa51 8230062: assert(i == p->size()-1) failed: must be last element of the pack
Avoids vectorization of reduction chain in which an intermediate result is used.

Reviewed-by: roland, thartmann
2019-09-30 09:29:10 +02:00
Roland Westrelin
2f2ec624a2 8227384: C2 compilation fails with "graph should be schedulable" when running with -XX:-EliminateLocks
Reviewed-by: thartmann, kvn
2019-07-16 08:56:08 +02:00
Patric Hedlin
8275b17b07 8229499: Node budget assert in fuzzed test
Reviewed-by: thartmann, neliasso
2019-09-12 11:44:51 +02:00
Tobias Hartmann
a03e92201d 8231223: C2's conditional move optimization fails with assert(bol->Opcode() == Op_Bool) failed
Bail out if the range check If has an Opaque4Node input instead of a BoolNode.

Reviewed-by: roland, kvn
2019-09-26 09:16:08 +02:00
Roland Westrelin
e2803ed999 8231055: C2: arraycopy with same non escaping src and dest but different positions causes wrong execution
Reviewed-by: thartmann, vlivanov
2019-09-17 15:58:54 +02:00
Roland Westrelin
dfc5c795c7 8229483: Sinking load out of loop may trigger: assert(found_sfpt) failed: no node in loop that's not input to safepoint
Reviewed-by: thartmann, neliasso
2019-09-23 16:49:09 +02:00
Roland Westrelin
a63b541842 8230061: # assert(mode == ControlAroundStripMined && use == sfpt) failed: missed a node
Reviewed-by: thartmann, neliasso
2019-08-28 15:51:03 +02:00
Lois Foltan
0c507f3180 8230505: Replace JVM type comparisons to T_OBJECT and T_ARRAY with call to is_reference_type
Consistently use is_reference_type when comparing type for T_OBJECT or T_ARRAY.

Co-authored-by: John Rose <john.r.rose@oracle.com>
Reviewed-by: dlong, coleenp, hseigel
2019-09-23 14:49:04 -04:00
Roman Kennke
5eb643144b 8231085: C2/GC: Better GC-interface for expanding clone
Reviewed-by: eosterlund
2019-09-18 20:56:18 +02:00
Sergey Bylokhov
f8a875bfce 8231027: Correct typos
Reviewed-by: lancea, dholmes, erikj
2019-09-17 19:52:51 -07:00
Tobias Hartmann
2df5ae8220 8230742: Make AggressiveUnboxing a diagnostic flag
AggressiveUnboxing is enabled by default. It should therefore be a diagnostic flag.

Reviewed-by: roland, shade
2019-09-16 13:53:41 +02:00
Roland Westrelin
9b81fe37f2 8230470: Shenandoah doesn't need change from JDK-8212610 anymore
Reviewed-by: thartmann
2019-09-03 09:28:42 +02:00
Christian Hagedorn
316985c85c 8220416: Comparison of klass pointers is not optimized any more
Enables dead klass pointer optimization (since JDK-6964458) again.

Reviewed-by: roland, thartmann
2019-09-12 12:23:25 +02:00
Roland Westrelin
ec5451c117 8229701: aarch64: C2 OSR compilation fails with "shouldn't process one node several times" in final graph reshaping
Reviewed-by: thartmann, kvn
2019-08-23 14:22:29 +02:00
Matthias Baesken
36768f2a72 8230711: ConnectionGraph::unique_java_object(Node* N) return NULL if n is not in the CG
Reviewed-by: mdoerr
2019-09-06 16:15:11 +02:00
Christian Hagedorn
2c3973af9b 8225653: Provide more information when hitting SIGILL from HaltNode
Add information string for each HaltNode which is printed if hit at runtime.

Reviewed-by: vlivanov, thartmann
2019-09-10 08:43:33 +02:00
Richard Reingruber
d7ca08a5cc 8230363: C2: Let ConnectionGraph::not_global_escape(Node* n) return false if n is not in the CG
Reviewed-by: thartmann, mdoerr
2019-08-30 09:24:54 +02:00
Tobias Hartmann
a4b46ccc23 8229496: SIGFPE (division by zero) in C2 OSR compiled method
Adding a CastNode to keep the dependency between the div/mod operation and the zero check.

Reviewed-by: roland, mdoerr
2019-09-05 13:56:17 +02:00