-
Enhancement
-
Resolution: Fixed
-
P4
-
18
-
b28
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8278728 | 19 | Roland Westrelin | P4 | Resolved | Fixed | b28 |
Similar to JDK-8259609 but for loop and range checks of the shape:
for (int i = start; i < stop; i += inc) {
Objects.checkIndex(scale * ((long)i) + offset, length);
}
and
for (int i = start; i < stop; i += inc) {
Objects.checkIndex(((long)(scale * i)) + offset, length);
}
for (int i = start; i < stop; i += inc) {
Objects.checkIndex(scale * ((long)i) + offset, length);
}
and
for (int i = start; i < stop; i += inc) {
Objects.checkIndex(((long)(scale * i)) + offset, length);
}
- backported by
-
JDK-8278728 C2: optimize long range checks in int counted loops
-
- Resolved
-
- relates to
-
JDK-8281322 C2: always construct strip mined loop initially (even if strip mining is disabled)
-
- Resolved
-
-
JDK-8279535 C2: Dead code in PhaseIdealLoop::create_loop_nest after JDK-8276116
-
- Resolved
-
-
JDK-8259609 C2: optimize long range checks in long counted loops
-
- Resolved
-
(1 links to)