--- a/src/hotspot/share/opto/escape.cpp Thu Jul 04 17:02:17 2019 +0200
+++ b/src/hotspot/share/opto/escape.cpp Thu Jul 04 17:02:19 2019 +0200
@@ -350,6 +350,12 @@
if (n_ptn != NULL)
return; // No need to redefine PointsTo node during first iteration.
+ int opcode = n->Opcode();
+ bool gc_handled = BarrierSet::barrier_set()->barrier_set_c2()->escape_add_to_con_graph(this, igvn, delayed_worklist, n, opcode);
+ if (gc_handled) {
+ return; // Ignore node if already handled by GC.
+ }
+
if (n->is_Call()) {
// Arguments to allocation and locking don't escape.
if (n->is_AbstractLock()) {
@@ -382,11 +388,6 @@
if (n_ptn == phantom_obj || n_ptn == null_obj)
return; // Skip predefined nodes.
- int opcode = n->Opcode();
- bool gc_handled = BarrierSet::barrier_set()->barrier_set_c2()->escape_add_to_con_graph(this, igvn, delayed_worklist, n, opcode);
- if (gc_handled) {
- return; // Ignore node if already handled by GC.
- }
switch (opcode) {
case Op_AddP: {
Node* base = get_addp_base(n);