Integrated: 8352963: [REDO] Missing late inline cleanup causes compiler/vectorapi/VectorLogicalOpIdentityTest.java IR failure
Damon Fenacci
dfenacci at openjdk.org
Tue Apr 8 13:08:36 UTC 2025
On Thu, 3 Apr 2025 06:46:23 GMT, Damon Fenacci <dfenacci at openjdk.org> wrote:
> This PR is a REDO of [JDK-8302459](https://bugs.openjdk.org/browse/JDK-8302459) ([PR](https://github.com/openjdk/jdk/pull/21682), [backout](https://bugs.openjdk.org/browse/JDK-8352965) triggered by a failing internal test).
>
> There was an issue with `CallGenerator::for_method_handle_call` that could delay late inlining by creating a "generic" `LateInlineCallGenerator` instead of a more specific `LateInlineMHCallGenerator`:
> https://github.com/openjdk/jdk/blob/74df384a9870431efb184158bba032c79c35356e/src/hotspot/share/opto/callGenerator.cpp#L991
> While running IGVN this could be misinterpreted as non-MH late-inline
> https://github.com/openjdk/jdk/blob/c282fb9add32f1fac8174ca84b1b68a869d2578d/src/hotspot/share/opto/callnode.cpp#L1088-L1091
> eventually triggering `assert(!cg->method()->is_method_handle_intrinsic(), "required");`
>
> The fix involves creating a `LateInlineMHCallGenerator` instead. Here is what changed from the backed out PR:
> https://github.com/openjdk/jdk/blob/c282fb9add32f1fac8174ca84b1b68a869d2578d/src/hotspot/share/opto/callGenerator.cpp#L991-L995
>
> ### Testing
>
> Tier 1-4 (windows-x64, linux-x64/aarch64, and macosx-x64/aarch64; release and debug mode)
This pull request has now been integrated.
Changeset: d9f2e692
Author: Damon Fenacci <dfenacci at openjdk.org>
URL: https://git.openjdk.org/jdk/commit/d9f2e6921558b4919889d81871b699971fb4f3ba
Stats: 101 lines in 7 files changed: 45 ins; 3 del; 53 mod
8352963: [REDO] Missing late inline cleanup causes compiler/vectorapi/VectorLogicalOpIdentityTest.java IR failure
Reviewed-by: vlivanov, thartmann
-------------
PR: https://git.openjdk.org/jdk/pull/24402
More information about the hotspot-compiler-dev
mailing list