aboutsummaryrefslogtreecommitdiff
path: root/src/share/vm
diff options
context:
space:
mode:
authorkvn <none@none>2014-04-22 17:45:56 -0700
committerkvn <none@none>2014-04-22 17:45:56 -0700
commitab7a5c4c1bd135ca118feb45594f63903eadf8ec (patch)
tree810234eb3fa589f9e7bd77588c3c0efd8375a7b8 /src/share/vm
parent7e7ceebd06b390b6e8da533e1142b4bd55b90268 (diff)
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
Diffstat (limited to 'src/share/vm')
-rw-r--r--src/share/vm/opto/superword.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/share/vm/opto/superword.cpp b/src/share/vm/opto/superword.cpp
index 96c81bd99..47b793822 100644
--- a/src/share/vm/opto/superword.cpp
+++ b/src/share/vm/opto/superword.cpp
@@ -1262,8 +1262,9 @@ void SuperWord::co_locate_pack(Node_List* pk) {
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;