--- a/hotspot/src/share/vm/opto/lcm.cpp Mon Jul 25 21:02:51 2016 +0300
+++ b/hotspot/src/share/vm/opto/lcm.cpp Thu Jun 23 17:58:59 2016 +0000
@@ -1293,11 +1293,12 @@
Block *sb = block->_succs[i];
// Clone the entire area; ignoring the edge fixup for now.
for( uint j = end; j > beg; j-- ) {
- // It is safe here to clone a node with anti_dependence
- // since clones dominate on each path.
Node *clone = block->get_node(j-1)->clone();
sb->insert_node(clone, 1);
map_node_to_block(clone, sb);
+ if (clone->needs_anti_dependence_check()) {
+ insert_anti_dependences(sb, clone);
+ }
}
}