JDK-8315066 : Add unsigned bounds and known bits to TypeInt/Long
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 22
  • Priority: P4
  • Status: Open
  • Resolution: Unresolved
  • Submitted: 2023-08-26
  • Updated: 2024-03-25
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.
Other
tbdUnresolved
Related Reports
Duplicate :  
Relates :  
Relates :  
Description
Adding unsigned bounds and known bits to TypeInt/Long has several advantages:

- More tight value constraints increase the strength of GVN and CCP and open more transformations and simplifications.

- Currently we have some specifically crafted analysis such as CmpU of Add/Sub, And of a LShift, etc and we have some potential improvements in JBS such as the sign of an Or. These can be solved elegantly using unsigned bounds and known bits.

- Ability to express TypeInt::CC_NE
Comments
A pull request was submitted for review. URL: https://git.openjdk.org/jdk/pull/17508 Date: 2024-01-20 19:23:23 +0000
20-01-2024

A pull request was submitted for review. URL: https://git.openjdk.org/jdk/pull/15440 Date: 2023-08-27 12:26:22 +0000
27-08-2023