8153792: EA: assert(ptn->as_LocalVar()->edge_count() > 0) failed: sanity when compiling compareAndExchange
authorshade
Thu, 12 May 2016 12:46:07 +0300
changeset 38677 1c1598b02874
parent 38676 48614091c64b
child 38678 06d6c40ce33b
child 38679 530bd9fb6421
8153792: EA: assert(ptn->as_LocalVar()->edge_count() > 0) failed: sanity when compiling compareAndExchange Reviewed-by: kvn, psandoz
hotspot/src/share/vm/opto/escape.cpp
--- a/hotspot/src/share/vm/opto/escape.cpp	Thu May 12 08:25:42 2016 +0200
+++ b/hotspot/src/share/vm/opto/escape.cpp	Thu May 12 12:46:07 2016 +0300
@@ -721,7 +721,8 @@
         break;
       }
 #endif
-      if (opcode == Op_GetAndSetP || opcode == Op_GetAndSetN) {
+      if (opcode == Op_GetAndSetP || opcode == Op_GetAndSetN ||
+          opcode == Op_CompareAndExchangeN || opcode == Op_CompareAndExchangeP) {
         add_local_var_and_edge(n, PointsToNode::NoEscape, adr, NULL);
       }
       if (adr_type->isa_oopptr() ||