From 7548b8eed5c63e69815520b69fbb67aa67bbb9b6 Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Fri, 8 Jan 2010 09:42:31 -0800 Subject: [PATCH] 6915110: IfNode::up_one_dom moves beyond RootNode bug in src/share/vm/opto/ifnode.cpp Check RootNode before check Loop in IfNode::up_one_dom(). Reviewed-by: never --- hotspot/src/share/vm/opto/ifnode.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hotspot/src/share/vm/opto/ifnode.cpp b/hotspot/src/share/vm/opto/ifnode.cpp index 51ca8fe28ad..a026fceef47 100644 --- a/hotspot/src/share/vm/opto/ifnode.cpp +++ b/hotspot/src/share/vm/opto/ifnode.cpp @@ -531,6 +531,9 @@ Node* IfNode::up_one_dom(Node *curr, bool linear_only) { 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