8161651: Logic in ConnectionGraph::split_unique_types() wrongly assumes node always have memory input
authorroland
Mon, 18 Jul 2016 20:45:51 +0200
changeset 40083 17565e6c55a0
parent 40082 a3fd14b2e3a8
child 40084 98825f02aa8d
8161651: Logic in ConnectionGraph::split_unique_types() wrongly assumes node always have memory input Reviewed-by: thartmann, kvn
hotspot/src/share/vm/opto/escape.cpp
--- a/hotspot/src/share/vm/opto/escape.cpp	Fri Jul 22 17:52:03 2016 +0000
+++ b/hotspot/src/share/vm/opto/escape.cpp	Mon Jul 18 20:45:51 2016 +0200
@@ -3134,8 +3134,8 @@
         }
       } else {
         uint op = use->Opcode();
-        if ((use->in(MemNode::Memory) == n) &&
-            (op == Op_StrCompressedCopy || op == Op_StrInflatedCopy)) {
+        if ((op == Op_StrCompressedCopy || op == Op_StrInflatedCopy) &&
+            (use->in(MemNode::Memory) == n)) {
           // They overwrite memory edge corresponding to destination array,
           memnode_worklist.append_if_missing(use);
         } else if (!(op == Op_CmpP || op == Op_Conv2B ||