JDK-8278296 : Generalize long range check transformation
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 18
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2021-12-06
  • Updated: 2024-01-18
  • Resolved: 2022-03-07
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 19
19 b13Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Description
A long range check is only transformed into an int range check subject to range check elimination if:

- the counted loop goes upward
- the scale factor for the element being accessed is positive

All combination of:
(upward loop, downward loop) x (positive scale, negative scale)
should be supported.
Comments
Changeset: ef266d77 Author: Roland Westrelin <roland@openjdk.org> Date: 2022-03-07 16:26:19 +0000 URL: https://git.openjdk.java.net/jdk/commit/ef266d77b6eb54d7e30a0aafd8a3e8c8f4f0e43a
07-03-2022

A pull request was submitted for review. URL: https://git.openjdk.java.net/jdk/pull/6989 Date: 2022-01-07 15:18:04 +0000
07-01-2022