hotspot/src/share/vm/opto/superword.cpp
changeset 31405 594c1ae9477e
parent 31403 7bf7e00a1aac
child 31520 4a6cbcae9f46
--- a/hotspot/src/share/vm/opto/superword.cpp	Wed Jun 17 17:48:25 2015 -0700
+++ b/hotspot/src/share/vm/opto/superword.cpp	Thu Jun 18 11:09:29 2015 -0700
@@ -184,18 +184,17 @@
     }
 
     if (n->is_Mem()) {
+      MemNode* current = n->as_Mem();
+      BasicType bt = current->memory_type();
+      if (is_java_primitive(bt) == false) {
+        ignored_loop_nodes[i] = n->_idx;
+        continue;
+      }
       Node* adr = n->in(MemNode::Address);
       Node* n_ctrl = _phase->get_ctrl(adr);
 
       // save a queue of post process nodes
       if (n_ctrl != NULL && lpt()->is_member(_phase->get_loop(n_ctrl))) {
-        MemNode* current = n->as_Mem();
-        BasicType bt = current->memory_type();
-        if (is_java_primitive(bt) == false) {
-          ignored_loop_nodes[i] = n->_idx;
-          continue;
-        }
-
         // Process the memory expression
         int stack_idx = 0;
         bool have_side_effects = true;
@@ -234,8 +233,7 @@
       Node* n = lpt()->_body.at(i);
       if (n->is_Store()) {
         bt = n->as_Mem()->memory_type();
-      }
-      else {
+      } else {
         bt = n->bottom_type()->basic_type();
       }