Xue-Lei Andrew Fan
e80b5ea448
8299635: Hotspot update for deprecated sprintf in Xcode 14
...
Reviewed-by: dholmes, mikael
2023-01-25 15:42:53 +00:00
Roland Westrelin
05a0a71031
8297933: [REDO] Compiler should only use verified interface types for optimization
...
Reviewed-by: kvn, vlivanov
2023-01-09 08:26:08 +00:00
Damon Fenacci
ec95991470
8298736: Revisit usages of log10 in compiler code
...
Reviewed-by: thartmann, chagedorn, epeter
2022-12-19 08:47:04 +00:00
Roland Westrelin
9430f3e65c
8297934: [BACKOUT] Compiler should only use verified interface types for optimization
...
Reviewed-by: thartmann, kvn
2022-12-01 14:19:28 +00:00
Roland Westrelin
45d1807ad3
6312651: Compiler should only use verified interface types for optimization
...
Reviewed-by: vlivanov, kvn
2022-11-21 08:47:42 +00:00
Vladimir Kozlov
819c6919ca
8295867: TestVerifyGraphEdges.java fails with exit code -1073741571 when using AlwaysIncrementalInline
...
Reviewed-by: chagedorn, shade
2022-11-11 16:09:39 +00:00
Emanuel Peter
83abfa5d82
8255670: Improve C2's detection of modified nodes
...
Reviewed-by: kvn, thartmann, roland
2022-09-22 07:44:50 +00:00
Emanuel Peter
dbb2c4b6ac
8288897: Clean up node dump code
...
Reviewed-by: chagedorn, xliu
2022-09-05 14:27:00 +00:00
Xin Liu
31e50f2c76
8286104: use aggressive liveness for unstable_if traps
...
Reviewed-by: kvn, thartmann
2022-06-30 03:59:42 +00:00
Emanuel Peter
2471f8f7c5
8287647: VM debug support: find node by pattern in name or dump
...
Reviewed-by: kvn, chagedorn, thartmann
2022-06-15 08:06:47 +00:00
Emanuel Peter
33ed0365c3
8283775: better dump: VM support for graph querying in debugger with BFS traversal and node filtering
...
Reviewed-by: kvn, chagedorn, thartmann, rcastanedalo
2022-06-13 11:46:13 +00:00
Xin Liu
3da7e393ee
8287840: Dead copy region node blocks IfNode's fold-compares
...
Reviewed-by: kvn, thartmann
2022-06-07 17:12:14 +00:00
Roland Westrelin
aa7ccdf445
8275201: C2: hide klass() accessor from TypeOopPtr and typeKlassPtr subclasses
...
Reviewed-by: vlivanov, iveresov
2022-05-11 07:25:49 +00:00
Emanuel Peter
d478958eb2
8286179: Node::find(int) should not traverse from new to old nodes
...
Reviewed-by: kvn, chagedorn, thartmann
2022-05-10 08:04:13 +00:00
Emanuel Peter
395bc141f2
8281732: add assert for non-NULL assumption for return of unique_ctrl_out
...
Reviewed-by: kvn, chagedorn, thartmann
2022-02-16 16:19:44 +00:00
Coleen Phillimore
460c4bb6ce
8270179: Rename Amalloc_4
...
8270217: Fix Arena::Amalloc to check for overflow better
Reviewed-by: kbarrett, stuefe
2021-07-13 13:06:20 +00:00
Coleen Phillimore
ac75a53fc5
8253779: Amalloc may be wasting space by overaligning
...
Reviewed-by: kbarrett, stuefe
2021-07-11 18:15:59 +00:00
Christian Hagedorn
f791fdf23e
8261147: C2: Node is wrongly marked as reduction resulting in a wrong execution due to wrong vector instructions
...
Reviewed-by: thartmann, kvn
2021-07-09 11:53:45 +00:00
Hui Shi
4023646ed1
8266528: Optimize C2 VerifyIterativeGVN execution time
...
Reviewed-by: kvn, thartmann
2021-05-22 11:51:37 +00:00
Tobias Hartmann
06d7602833
8261158: JVMState should not be shared between SafePointNodes
...
Reviewed-by: vlivanov, kvn
2021-05-12 07:21:25 +00:00
Yi Yang
fbfd4ea3ce
8265914: Duplicated NotANode and not_a_node
...
Reviewed-by: thartmann
2021-04-27 13:00:08 +00:00
Vladimir Ivanov
bfc1cd8eaf
8264320: ShouldNotReachHere in Compile::print_inlining_move_to()
...
Reviewed-by: kvn, thartmann
2021-04-23 12:53:54 +00:00
Roberto Castañeda Lozano
b3a319c834
8264842: IGV: different nodes sharing idx are treated as equal
...
Introduce IGV-specific node identifier and encapsulate it in IGV by showing a
configurable 'short node text' string instead.
Reviewed-by: iveresov, kvn
2021-04-23 07:29:54 +00:00
Roland Westrelin
20297a1beb
8263577: C2: reachable nodes shouldn't have dead uses at the end of optimizations
...
Reviewed-by: vlivanov, neliasso
2021-03-16 08:20:52 +00:00
Christian Hagedorn
aec037721c
8257498: Remove useless skeleton predicates
...
Reviewed-by: roland, thartmann
2021-02-01 09:39:31 +00:00
Vladimir Ivanov
62c7788b29
8257211: C2: Enable call devirtualization during post-parse phase
...
Reviewed-by: kvn, neliasso, thartmann
2020-12-07 22:50:38 +00:00
Roland Westrelin
3d460bd295
8256655: rework long counted loop handling
...
Reviewed-by: kvn, thartmann, vlivanov
2020-12-01 07:30:51 +00:00
Claes Redestad
b450e7c1c5
8256827: C2: Avoid reallocations by pre-sizing lists in post_allocate_copy_removal
...
Reviewed-by: kvn, thartmann
2020-11-23 10:18:40 +00:00
Claes Redestad
654ad27418
8256392: C2: Various Node cleanups
...
Reviewed-by: neliasso, thartmann, vlivanov
2020-11-17 12:24:42 +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
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
Xin Liu
bdda2058c2
8254369: Node::disconnect_inputs may skip precedences
...
disconnect_inputs() needs to iterate precedences edges in reverse order because rm_prec(i) may backfill _in[i] with a value afterward.
also remove the predicate if (n != NULL) in set_prec because it's always true.
Reviewed-by: kvn, redestad
2020-10-16 01:59:07 +00:00
Roland Westrelin
f44fc6defc
8254734: "dead loop detected" assert failure with patch from 8223051
...
Reviewed-by: chagedorn, kvn
2020-10-15 06:53:03 +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
Roberto Castañeda Lozano
a191c586dc
8253404: C2: assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded limit
...
Record nodes as dead in Node::destruct() if their index cannot be directly
reclaimed. This prevents the "Live Node limit exceeded limit" assertion failure
by improving the accuracy of Compile::live_nodes() when "hook" nodes in
ConvI2LNode::Ideal() are created and deleted non-consecutively.
This addition might result in multiple calls to compile::record_dead_node() for
the same node (e.g. from PhaseIdealLoop::spinup()), but this is safe, as
compile::record_dead_node() is idempotent.
Reviewed-by: neliasso, thartmann
2020-10-08 12:30:38 +00:00
Xin Liu
ea5a2b15a0
8251464: make Node::dump(int depth) support indent
...
Reviewed-by: thartmann
2020-10-02 13:45:29 +00:00
Roberto Castañeda Lozano
5dd9353b83
8253636: C2: Adjust NodeClasses::_max_classes
...
Update NodeClasses::_max_classes to the max class id within the
enumeration. Update comment and assertion to reflect that NodeClasses uses now
32 bits after the addition of Opaque1 in JDK-8229495.
Reviewed-by: neliasso, kvn
2020-10-01 06:39:25 +00:00
Christian Hagedorn
18cf3d8080
8247743: Segmentation fault in debug builds due to stack overflow in find_recur with deep graphs
...
Replace the recursive algorithm of Node::find() by an iterative one to avoid a stack overflow crash with deep graphs.
Reviewed-by: kvn, thartmann
2020-07-22 10:31:37 +02:00
Christian Hagedorn
4f99e1fb11
8248467: C2: compiler/intrinsics/object/TestClone fails with -XX:+VerifyGraphEdges
...
Fix assert by taking MemBarNodes into account whose precedence edge can be NULL.
Reviewed-by: kvn, thartmann
2020-07-22 10:28:34 +02:00
Christian Hagedorn
13b7c2e131
8244724: CTW: C2 compilation fails with "Live Node limit exceeded limit"
...
Fix live limit assert in node construction to be ignored during code generation in Compile::Code_Gen().
Reviewed-by: kvn, neliasso
2020-07-01 09:18:28 +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
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
Christian Hagedorn
09912cc509
8244182: Use root node as default for find_node when called from debugger
...
Improve find_node for simpler debugging.
Reviewed-by: roland, thartmann
2020-05-04 10:27:46 +02:00
Erik Österlund
76a8557d0c
8241438: Move IntelJccErratum mitigation code to platform-specific code
...
Reviewed-by: vlivanov, kvn
2020-04-08 15:34:56 +00:00
Christian Hagedorn
307b376a9b
8241595: Fix missing debug_orig information in Ideal Graph Visualizer
...
Show missing debug_orig information for nodes in Ideal Graph Visualizer.
Reviewed-by: kvn, neliasso
2020-03-26 13:43:51 +01:00
Christian Hagedorn
2ac2d590c2
8238811: C2: assert(i >= req() || i == 0 || is_Region() || is_Phi()) with -XX:+VerifyGraphEdges
...
Fix -XX:+VerifyGraphEdges by additionally handling ArrayCopyNodes and UnlockNodes and add some basic flag testing.
Reviewed-by: roland, neliasso
2020-02-13 15:08:08 +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
Claes Redestad
12adeca887
8233708: VectorSet cleanup
...
Reviewed-by: neliasso, shade, thartmann
2019-11-07 12:12:39 +01: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