30 lines
1.0 KiB
Diff
30 lines
1.0 KiB
Diff
|
# HG changeset patch
|
||
|
# User aph
|
||
|
# Date 1470065634 -3600
|
||
|
# Mon Aug 01 16:33:54 2016 +0100
|
||
|
# Node ID ee9bffb3bd390b2ad805c7b59d7d2ab8a68a4367
|
||
|
# Parent ab3e0bde3c15bbba60de4decabcd70ffef657448
|
||
|
8157306, PR3121: Random infrequent null pointer exceptions in javac
|
||
|
Reviewed-by: kvn
|
||
|
|
||
|
diff -r ab3e0bde3c15 -r ee9bffb3bd39 src/share/vm/opto/lcm.cpp
|
||
|
--- openjdk/hotspot/src/share/vm/opto/lcm.cpp Tue Jul 26 04:42:03 2016 +0100
|
||
|
+++ openjdk/hotspot/src/share/vm/opto/lcm.cpp Mon Aug 01 16:33:54 2016 +0100
|
||
|
@@ -1090,11 +1090,14 @@
|
||
|
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);
|
||
|
+#ifdef AARCH64
|
||
|
+ if (clone->needs_anti_dependence_check()) {
|
||
|
+ insert_anti_dependences(sb, clone);
|
||
|
+ }
|
||
|
+#endif
|
||
|
}
|
||
|
}
|
||
|
|