JDK-8369435 : C2: transform (LShiftX (SubX con0 a), con1) into (SubX con0<
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 26
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2025-10-08
  • Updated: 2025-11-11
  • Resolved: 2025-10-30
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 26
26 b23Fixed
Related Reports
Duplicate :  
Description
A similar transformation from:

(LShiftX (AddX a con0) con1)

to:

(AddX (LShiftX a con1) con0<<con1)

exists already. And I noticed the transformation with SubX that I propose helps long RCE.
Comments
Changeset: 80fcfaf4 Branch: master Author: Roland Westrelin <roland@openjdk.org> Date: 2025-10-30 10:34:37 +0000 URL: https://git.openjdk.org/jdk/commit/80fcfaf41aa2d6af30f15877e4466647dbca424e
30-10-2025

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/27842 Date: 2025-10-16 09:36:03 +0000
16-10-2025