Skip to content

Commit a93cf5f

Browse files
committed
8308884: [17u/11u] Backout JDK-8297951
This reverts commit 08e30d0 Reviewed-by: shade
1 parent 8f65a6d commit a93cf5f

File tree

2 files changed

+7
-83
lines changed

2 files changed

+7
-83
lines changed

src/hotspot/share/opto/loopPredicate.cpp

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1343,11 +1343,13 @@ bool PhaseIdealLoop::loop_predication_impl_helper(IdealLoopTree *loop, ProjNode*
13431343
upper_bound_iff->set_req(1, upper_bound_bol);
13441344
if (TraceLoopPredicate) tty->print_cr("upper bound check if: %s %d ", negate ? " negated" : "", lower_bound_iff->_idx);
13451345

1346-
// Fall through into rest of the cleanup code which will move any dependent nodes to the skeleton predicates of the
1347-
// upper bound test. We always need to create skeleton predicates in order to properly remove dead loops when later
1348-
// splitting the predicated loop into (unreachable) sub-loops (i.e. done by unrolling, peeling, pre/main/post etc.).
1349-
new_predicate_proj = insert_initial_skeleton_predicate(iff, loop, proj, predicate_proj, upper_bound_proj, scale,
1350-
offset, init, limit, stride, rng, overflow, reason);
1346+
// Fall through into rest of the clean up code which will move
1347+
// any dependent nodes onto the upper bound test.
1348+
new_predicate_proj = upper_bound_proj;
1349+
1350+
if (iff->is_RangeCheck()) {
1351+
new_predicate_proj = insert_initial_skeleton_predicate(iff, loop, proj, predicate_proj, upper_bound_proj, scale, offset, init, limit, stride, rng, overflow, reason);
1352+
}
13511353

13521354
#ifndef PRODUCT
13531355
if (TraceLoopOpts && !TraceLoopPredicate) {

test/hotspot/jtreg/compiler/loopopts/TestMissingSkeletonPredicateForIfNode.java

Lines changed: 0 additions & 78 deletions
This file was deleted.

0 commit comments

Comments
 (0)