diff src/share/vm/opto/parse1.cpp @ 3345:bad7ecd0b6ed

5091921: Sign flip issues in loop optimizer Summary: Fix integer overflow problem in the code generated by loop optimizer. Reviewed-by: never
author kvn
date Wed, 04 May 2011 13:12:42 -0700
parents 1d1603768966
children 069ab3f976d3
line wrap: on
line diff
--- a/src/share/vm/opto/parse1.cpp	Wed May 04 03:42:58 2011 -0700
+++ b/src/share/vm/opto/parse1.cpp	Wed May 04 13:12:42 2011 -0700
@@ -638,7 +638,7 @@
         ensure_phis_everywhere();
 
         if (block->is_SEL_head() &&
-            UseLoopPredicate) {
+            (UseLoopPredicate || LoopLimitCheck)) {
           // Add predicate to single entry (not irreducible) loop head.
           assert(!block->has_merged_backedge(), "only entry paths should be merged for now");
           // Need correct bci for predicate.