changeset 7117:42274879e644

8041351: Crash in src/share/vm/opto/loopnode.cpp:3215 - assert(!had_error) failed: bad dominance Summary: add missing is_mem() check when we collect load nodes in SuperWord::co_locate_pack(). Reviewed-by: iveresov
author kvn
date Tue, 22 Apr 2014 17:45:56 -0700
parents 31e28ee4c9b4
children 9f9257611ade
files src/share/vm/opto/superword.cpp
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/opto/superword.cpp	Wed Apr 23 10:35:15 2014 +0200
+++ b/src/share/vm/opto/superword.cpp	Tue Apr 22 17:45:56 2014 -0700
@@ -1262,8 +1262,9 @@
     memops.clear();
     for (DUIterator i = upper_insert_pt->outs(); upper_insert_pt->has_out(i); i++) {
       Node* use = upper_insert_pt->out(i);
-      if (!use->is_Store())
+      if (use->is_Mem() && !use->is_Store()) {
         memops.push(use);
+      }
     }
 
     MemNode* lower_insert_pt = last;