50 Commits

Author SHA1 Message Date
Vladimir Ivanov
fbdc1877e2 8257624: C2: PhaseMacroExpand::eliminate_macro_nodes() crashes on out-of-bounds access into macro node array
Reviewed-by: neliasso, kvn
2020-12-04 09:37:18 +00:00
Jatin Bhateja
0d91f0a1df 8252848: Optimize small primitive arrayCopy operations through partial inlining using AVX-512 masked instructions
Reviewed-by: neliasso, kvn
2020-11-25 06:08:19 +00:00
Tobias Hartmann
6d878565f8 8256325: Remove duplicate asserts in PhaseMacroExpand::expand_macro_nodes
Reviewed-by: shade, redestad
2020-11-17 09:37:36 +00:00
Ioi Lam
2f06893a29 8252526: Remove excessive inclusion of jvmti.h and jvmtiExport.hpp
Reviewed-by: ihse, kbarrett
2020-11-12 01:45:27 +00:00
Tobias Hartmann
eb85b8da32 8255665: C2 should aggressively remove temporary hook nodes
Reviewed-by: chagedorn, kvn
2020-11-05 08:02:47 +00:00
Richard Reingruber
40f847e2fb 8227745: Enable Escape Analysis for Better Performance in the Presence of JVMTI Agents
8233915: JVMTI FollowReferences: Java Heap Leak not found because of C2 Scalar Replacement

Reviewed-by: mdoerr, goetz, sspitsyn, kvn
2020-10-20 15:31:55 +00:00
Roland Westrelin
e76de18956 8223051: support loops with long (64b) trip counts
Reviewed-by: vlivanov, thartmann, jrose
2020-10-19 11:30:13 +00:00
Xin Liu
bff586f07a 8254269: simplify Node::disconnect_inputs
Node::disconnect_inputs cuts off all input edges without exception.

Reviewed-by: redestad, kvn
2020-10-12 19:54:25 +00:00
Mikael Vidstedt
1f5e21a16e Merge 2020-07-15 21:24:39 -07:00
Roland Westrelin
b67814941f 8229495: SIGILL in C2 generated OSR compilation
Reviewed-by: kvn, chagedorn
2020-07-01 17:28:49 +02:00
Jesper Wilhelmsson
4922a35c6a Merge 2020-07-03 19:05:00 +02:00
Nils Eliasson
999357250a 8248388: ZGC: Load barrier incorrectly elided in jdk/java/text/Format/DateFormat/SDFTCKZoneNamesTest.java
Reviewed-by: kvn, thartmann
2020-07-03 10:05:53 +02:00
Christian Hagedorn
840867efa6 8247218: Add default constructor to VectorSet to use Thread::current()->resource_area() as arena by default
Add a default construction to VectorSet and clean up uses of the old constructor.

Reviewed-by: kvn, thartmann
2020-06-29 17:14:19 +02:00
Stefan Karlsson
77bdc30650 8247470: Fix CHeap GrowableArray NMT accounting
Reviewed-by: coleenp, tschatzl, kbarrett
2020-06-16 09:37:53 +02:00
Tobias Hartmann
5793b0633a 8246153: TestEliminateArrayCopy fails with -XX:+StressReflectiveCode
Use the memory input instead of the control input to find the membar.

Reviewed-by: kvn, neliasso
2020-06-02 09:07:53 +02:00
Tobias Hartmann
3d36ef14b3 8241997: Scalar replacement of cloned array is broken after JDK-8238759
Replacement code still expected ArrayCopyNode::Dest to be an AddPNode.

Reviewed-by: roland, neliasso
2020-04-06 09:52:28 +02:00
Roland Westrelin
ea56776ef5 8239072: subtype check macro node causes node budget to be exhausted
Reviewed-by: vlivanov, kvn
2020-03-31 10:40:17 +02:00
Nils Eliasson
2ba0575cea 8239878: Bug in PrintEliminateAllocations code causes TestClhsdbJstackLock.java to fail
Reviewed-by: shade
2020-02-27 13:11:06 +01:00
Nils Eliasson
38a57e8bed 8238723: yank_alloc_node must remove membar
Reviewed-by: vlivanov, thartmann, roland
2020-02-24 11:31:07 +01:00
Roland Westrelin
52d46c314b 8238691: C2: turn subtype check into macro node
Reviewed-by: vlivanov, thartmann
2020-02-14 10:31:34 +01:00
Stefan Karlsson
e4b27a48a0 8183574: Unify the is_power_of_2 functions
Reviewed-by: kbarrett, redestad
2020-02-17 10:03:17 +01:00
Nils Eliasson
b59f630249 8237581: Improve allocation expansion
Reviewed-by: vlivanov, redestad
2020-02-06 11:21:39 +01:00
Nils Eliasson
e1b94b1635 8235653: Clean-up BarrierSetC2
Reviewed-by: redestad, rkennke, thartmann
2019-12-11 14:08:20 +01:00
Tobias Hartmann
b0812b2802 8234616: assert(0 <= i && i < _len) failed: illegal index in PhaseMacroExpand::expand_macro_nodes()
Make sure the index into the macro node array is decremented on removal.

Reviewed-by: vlivanov, kvn
2019-12-04 07:07:21 +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
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
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
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
Stefan Karlsson
3149ed4993 8230203: Replace markWord enums with typed constants
Reviewed-by: kbarrett, dholmes
2019-08-30 09:06:46 +02:00
Stefan Karlsson
ae5615c614 8229258: Rework markOop and markOopDesc into a simpler mark word value carrier
Reviewed-by: rkennke, coleenp, kbarrett, dcubed
2019-08-06 10:48:21 +02:00
Tobias Hartmann
ac2ea95788 8229016: C2 scalarization crashes with assert(node->Opcode() == Op_CastP2X) failed: ConvP2XNode required
Detect array copy to self to avoid emitting another load to the to-be-removed allocation.

Reviewed-by: kvn
2019-08-07 12:09:55 +02:00
Erik Österlund
a42636d34b 8227407: ZGC: C2 loads and load barriers can get separated by safepoints
Reviewed-by: neliasso, smonteith, roland
2019-07-29 13:57:54 +02:00
Nils Eliasson
ccbc87cc31 8226287: Make process_users_of_allocation handle gc barriers
Reviewed-by: kvn, roland
2019-07-01 10:49:58 +02:00
Stefan Karlsson
c90f3ee68b 8223624: Cleanup includes of universe.hpp
Reviewed-by: coleenp, lkorinth
2019-05-09 14:28:30 +02:00
Roman Kennke
8b62a2ee9d 8214259: Implementation: JEP 189: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental)
Co-authored-by: Christine Flood <chf@redhat.com>
Co-authored-by: Aleksey Shipilev <shade@redhat.com>
Co-authored-by: Roland Westrelin <rwestrel@redhat.com>
Co-authored-by: Zhenygu Gu <zgu@redhat.com>
Co-authored-by: Andrew Haley <aph@redhat.com>
Co-authored-by: Andrew Dinn <adinn@redhat.com>
Co-authored-by: Mario Torre <mtorre@redhat.com>
Reviewed-by: kvn, roland, shade, coleenp, lmesnik, pliden, jgeorge, ihse, erikj
2018-12-10 15:47:44 +01:00
Roland Westrelin
8849b1c7b7 8214172: GC interface entry points for loop opts
Reviewed-by: kvn, rkennke
2018-11-27 09:35:02 +01:00
Roland Westrelin
8ab8d45552 8212243: More gc interface tweaks for arraycopy
Reviewed-by: kvn, eosterlund
2018-11-06 10:01:27 +01:00
Roland Westrelin
b4c401fa37 8212611: Small collection of simple changes from shenandoah
Reviewed-by: thartmann, kvn, eosterlund
2018-10-17 10:19:13 +02:00
Aleksey Shipilev
1194d162cb 8210963: Build failures after "8210829: Modularize allocations in C2"
Reviewed-by: rkennke, thartmann
2018-09-20 21:14:38 +02:00
Roman Kennke
8ce9db9ed5 8210829: Modularize allocations in C2
Reviewed-by: kvn, roland
2018-09-19 21:31:33 +02:00
Goetz Lindenmaier
2e682fa3cd 8207049: Minor improvements of compiler code
Reviewed-by: kvn, mdoerr
2018-07-12 16:31:28 +02:00
Per Lidén
e7af7a4aef 8204210: Implementation: JEP 333: ZGC: A Scalable Low-Latency Garbage Collector (Experimental)
Co-authored-by: Stefan Karlsson <stefan.karlsson@oracle.com>
Co-authored-by: Erik Osterlund <erik.osterlund@oracle.com>
Co-authored-by: Mikael Gerdin <mikael.gerdin@oracle.com>
Co-authored-by: Kim Barrett <kim.barrett@oracle.com>
Co-authored-by: Nils Eliasson <nils.eliasson@oracle.com>
Co-authored-by: Rickard Backman <rickard.backman@oracle.com>
Co-authored-by: Roland Westrelin <rwestrel@redhat.com>
Co-authored-by: Coleen Phillimore <coleen.phillimore@oracle.com>
Co-authored-by: Robbin Ehn <robbin.ehn@oracle.com>
Co-authored-by: Gerard Ziemski <gerard.ziemski@oracle.com>
Co-authored-by: Hugh Wilkinson <hugh.wilkinson@intel.com>
Co-authored-by: Sandhya Viswanathan <sandhya.viswanathan@intel.com>
Co-authored-by: Bill Wheeler <bill.npo.wheeler@intel.com>
Co-authored-by: Vinay K. Awasthi <vinay.k.awasthi@intel.com>
Co-authored-by: Yasumasa Suenaga <yasuenag@gmail.com>
Reviewed-by: pliden, stefank, eosterlund, ehelin, sjohanss, rbackman, coleenp, ihse, jgeorge, lmesnik, rkennke
2018-06-12 17:40:28 +02:00
Erik Österlund
53ec88908c 8202377: Modularize C2 GC barriers
Reviewed-by: neliasso, roland
2018-05-18 14:51:06 +02:00
Stefan Karlsson
1cb95bd3d1 8200729: Conditional compilation of GCs
Reviewed-by: ehelin, coleenp, kvn, ihse
2018-05-04 11:41:35 +02:00
Per Lidén
6825739d3f 8201318: Introduce GCThreadLocalData to abstract GC-specific data belonging to a thread
Reviewed-by: shade, rehn
2018-04-12 08:25:56 +02:00
Roland Westrelin
98db6d11f3 8193130: Bad graph when unrolled loop bounds conflicts with range checks
Reviewed-by: kvn, thartmann
2018-03-22 20:21:19 -07:00
Coleen Phillimore
fde89a34d0 8199263: Split interfaceSupport.hpp to not require including .inline.hpp files
InterfaceSupport.hpp is an inline file so moved to interfaceSupport.inline.hpp and stopped including it in .hpp files

Reviewed-by: stefank, rehn, kvn
2018-03-16 09:12:13 -04:00
Dean Long
4714dab4cb 8194988: 8 Null pointer dereference defect groups related to MultiNode::proj_out()
Reviewed-by: kvn
2018-01-17 14:25:47 -08:00
Roland Westrelin
386e258e20 8186027: C2: loop strip mining
Reviewed-by: kvn, neliasso
2017-11-28 11:59:16 +01:00
Erik Joelsson
3789983e89 8187443: Forest Consolidation: Move files to unified layout
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00