On Wed, 29 Apr 2026 18:12:24 GMT, Quan Anh Mai <[email protected]> wrote:
> Hi, > > This PR redoes [JDK-8377414](https://bugs.openjdk.org/browse/JDK-8377414). > While at it, I encountered > [JDK-8383416](https://bugs.openjdk.org/browse/JDK-8383416) when a > `CastPPNode` is pushed through an unbuffered `InlineTypeNode`, which results > in the oop input being `top`. This incorrectly kills the graph. I tried > fixing JDK-8383416 alone but I encountered the issue with acmp expansion > passing the incorrect base to `InlineTypeNode::check_substitutability`. As a > result, this PR aims at fixing both issues. > > It is easier reviewing each commit. The first one just reverts the backout > PR, the second one ensures that the expansion does not modify the memory, and > the third commit fixes JDK-8383416. > > Testing: > > - [x] tier1-4,valhalla-comp-stress > > Please take a look and leave your review, thanks a lot. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai). An issue with giving up on the way is that it leaves dead node in the graph even in the case there is no change, this is not good for IGVN progress tracking. As a result, I added back `InlineTypeNode::can_emit_substitutability_check` to ensure the the transformation is possible before committing. I have also added `allowNotCompilable` to `TestLWorld::test179`, similar to `test178`. ------------- PR Comment: https://git.openjdk.org/valhalla/pull/2376#issuecomment-4376167619
