JDK-8366357 : C2 SuperWord: refactor VTransformNode::apply with VTransformApplyState
  • Type: Sub-task
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 26
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2025-08-28
  • Updated: 2025-09-02
  • Resolved: 2025-09-01
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 masterFixed
Description
I'm working on cost-modeling, and am integrating some smaller changes from this proof-of-concept PR:
https://github.com/openjdk/jdk/pull/20964

This is a pure refactoring - no change in behaviour. I'm presenting it like this because it will make reviews easier.

The goal here is that VTransformNode::apply only needs a single argument. This is important, as we will soon add more components that need to be updated during apply. That way, we can simply add more parts to VTransformApplyState, and do not need to add more arguments to VTransformNode::apply.

And yes: I have considering passing the apply_state as const. While this may be possible with the current code state, the upcoming changes from https://github.com/openjdk/jdk/pull/20964 will require non-const access to the apply_state (e.g. for set_memory_state).
Comments
Changeset: dbac620b Branch: master Author: Emanuel Peter <epeter@openjdk.org> Date: 2025-09-01 06:56:48 +0000 URL: https://git.openjdk.org/jdk/commit/dbac620b996713087f0d1b1189e543e51a0bb09f
01-09-2025

A pull request was submitted for review. Branch: master URL: https://git.openjdk.org/jdk/pull/26987 Date: 2025-08-28 12:57:44 +0000
28-08-2025