Tobias Hartmann
eb85b8da32
8255665: C2 should aggressively remove temporary hook nodes
...
Reviewed-by: chagedorn, kvn
2020-11-05 08:02:47 +00:00
Vladimir Ivanov
7e2640432b
8255000: C2: Unify IGVN processing when loop opts are over
...
Reviewed-by: neliasso, iveresov, kvn
2020-10-21 08:09:00 +00:00
Nhat Nguyen
5fedfa707e
8251271: C2: Compile::_for_igvn list is corrupted after RenumberLiveNodes
...
Reviewed-by: vlivanov, thartmann
2020-10-20 06:18:49 +00:00
Roberto Castaneda Lozano
fed3636f12
8252219: C2: Randomize IGVN worklist for stress testing
...
Add 'StressIGVN' option to let C2 randomize IGVN worklist order. When enabled,
the worklist is shuffled before each main run of the IGVN loop. Also add
'StressSeed=N' option to specify the seed. If the seed is not specified, a
random one is generated. In either case, the seed is logged if 'LogCompilation'
is enabled. The new options are declared as production+diagnostic for
consistency with the existing 'StressLCM' and 'StressGCM' options.
Reviewed-by: kvn, chagedorn, thartmann
2020-09-28 06:44:58 +00:00
Roberto Castaneda Lozano
dcde95ba0d
8253586: C2: Clean up unused PhaseIterGVN::init_worklist()
...
Remove unused method PhaseIterGVN::init_worklist(Node *).
Reviewed-by: thartmann, chagedorn, neliasso
2020-09-25 06:53:48 +00: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
Christian Hagedorn
08df6a1f15
8246203: Segmentation fault in verification due to stack overflow with -XX:+VerifyIterativeGVN
...
Replace the recursive verification algorithm with an iterative one to avoid a stack overflow for large graphs.
Reviewed-by: kvn, thartmann
2020-06-15 09:50:11 +02:00
Roland Westrelin
f2b7509d5a
8237951: CTW: C2 compilation fails with "malformed control flow"
...
Reviewed-by: vlivanov, kvn
2020-01-28 13:36:30 +01:00
Nils Eliasson
e1b94b1635
8235653: Clean-up BarrierSetC2
...
Reviewed-by: redestad, rkennke, thartmann
2019-12-11 14:08:20 +01:00
Claes Redestad
06cb195865
8234331: Add robust and optimized utility for rounding up to next power of two
...
Reviewed-by: eosterlund, stuefe, jrose
2019-12-06 18:05:36 +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
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
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
Christian Hagedorn
a3c85f810c
6394013: C2: Remove VerifyOpto
...
Removed the VerifyOpto flag.
Reviewed-by: kvn, thartmann
2019-08-05 08:03:25 +02:00
Nils Eliasson
75e9d0a290
8224675: Late GC barrier insertion for ZGC
...
Reviewed-by: roland, eosterlund, pliden
2019-02-14 14:54:05 +01:00
Vladimir Ivanov
0a5a0b1a29
8217918: C2: -XX:+AggressiveUnboxing is broken
...
Reviewed-by: kvn
2019-02-01 18:50:22 -08:00
Roland Westrelin
b68257174d
8214862: assert(proj != __null) at compile.cpp:3251
...
Reviewed-by: kvn, thartmann
2018-12-07 17:56:51 +01:00
Roman Kennke
4b528df402
8214055: GC/C2 abstraction for phaseX
...
Reviewed-by: kvn, roland
2018-11-22 09:22:54 +01:00
Roman Kennke
9ba72c0c2c
8213381: Hook to allow GC to inject Node::Ideal() calls
...
Reviewed-by: kvn, eosterlund, roland
2018-11-06 23:03:05 +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
Tobias Hartmann
8e0e188abd
8210387: C2 compilation fails with "assert(node->_last_del == _last) failed: must have deleted the edge just produced"
...
Refresh iterator and start from the beginning while there is progress when removing dead regions.
Reviewed-by: kvn
2018-09-12 09:23:36 +02:00
Erik Österlund
ce61e39060
8208601: Introduce native oop barriers in C2 for OopHandle
...
Reviewed-by: neliasso, kvn
2018-08-22 13:06:33 +02:00
Thomas Schatzl
e98c176026
8208670: Compiler changes to allow enabling -Wreorder
...
Reviewed-by: kvn
2018-08-08 15:31:06 +02:00
Erik Österlund
53ec88908c
8202377: Modularize C2 GC barriers
...
Reviewed-by: neliasso, roland
2018-05-18 14:51:06 +02:00
Coleen Phillimore
1ee531afe9
8200555: OopHandle should use Access API
...
Add RootAccess<> to OopHandle.resolve() in runtime and interpreter code. Add comments for compiler code for later.
Reviewed-by: eosterlund, stefank
2018-04-18 10:39:40 -04: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
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
Coleen Phillimore
e908052a71
8189610: Reconcile jvm.h and all jvm_md.h between java.base and hotspot
...
Removed hotspot version of jvm*h and jni*h files.
Reviewed-by: ihse, mchung, dholmes
2017-10-31 11:55:09 -04:00
Tobias Hartmann
f8843b83da
8188785: CCP sets invalid type for java mirror load
...
Added special case for java mirror load to propagate correct type information.
Reviewed-by: kvn
2017-10-25 08:37:41 +02:00
Erik Joelsson
3789983e89
8187443: Forest Consolidation: Move files to unified layout
...
Reviewed-by: darcy, ihse
2017-09-12 19:03:39 +02:00