6915110: IfNode::up_one_dom moves beyond RootNode bug in src/share/vm/opto/ifnode.cpp
authorkvn
Fri, 08 Jan 2010 09:42:31 -0800
changeset 4582 1a6662d11385
parent 4581 e89fbd1bcb3d
child 4583 b36d52bd2d19
child 4584 e2a449e8cc6f
6915110: IfNode::up_one_dom moves beyond RootNode bug in src/share/vm/opto/ifnode.cpp Summary: Check RootNode before check Loop in IfNode::up_one_dom(). Reviewed-by: never Contributed-by: kevin.brown@sun.com
hotspot/src/share/vm/opto/ifnode.cpp
--- a/hotspot/src/share/vm/opto/ifnode.cpp	Fri Jan 08 11:09:46 2010 +0100
+++ b/hotspot/src/share/vm/opto/ifnode.cpp	Fri Jan 08 09:42:31 2010 -0800
@@ -531,6 +531,9 @@
   if (linear_only)
     return NULL;
 
+  if( dom->is_Root() )
+    return NULL;
+
   // Else hit a Region.  Check for a loop header
   if( dom->is_Loop() )
     return dom->in(1);          // Skip up thru loops