Details
-
Enhancement
-
Resolution: Fixed
-
P4
-
18
-
b28
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8278728 | 19 | Roland Westrelin | P4 | Resolved | Fixed | b28 |
Description
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);
}
Attachments
Issue Links
- 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)