comparison src/share/vm/opto/ifnode.cpp @ 1153:bea7a22a6f79

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
author kvn
date Fri, 08 Jan 2010 09:42:31 -0800
parents e715b51789d8
children c18cbe5936b8
comparison
equal deleted inserted replaced
1152:cd37471eaecc 1153:bea7a22a6f79
527 return dom; 527 return dom;
528 528
529 // Use linear_only if we are still parsing, since we cannot 529 // Use linear_only if we are still parsing, since we cannot
530 // trust the regions to be fully filled in. 530 // trust the regions to be fully filled in.
531 if (linear_only) 531 if (linear_only)
532 return NULL;
533
534 if( dom->is_Root() )
532 return NULL; 535 return NULL;
533 536
534 // Else hit a Region. Check for a loop header 537 // Else hit a Region. Check for a loop header
535 if( dom->is_Loop() ) 538 if( dom->is_Loop() )
536 return dom->in(1); // Skip up thru loops 539 return dom->in(1); // Skip up thru loops