Integrated: 8303513: C2: LoadKlassNode::make fails with 'expecting TypeKlassPtr'

Roberto Castañeda Lozano rcastanedalo at openjdk.org
Thu Jun 15 10:11:15 UTC 2023


On Wed, 14 Jun 2023 08:23:44 GMT, Roberto Castañeda Lozano <rcastanedalo at openjdk.org> wrote:

> This changeset skips the verification at the end of `SubTypeNode::Ideal()` if the bottom type of `obj_or_subklass` is TOP, to avoid violating the contract of `LoadKlassNode::make()`. This can happen for example in transient scenarios where `obj_or_subklass` is a projection of the TOP node, see the [JBS issue description](https://bugs.openjdk.org/browse/JDK-8303513) for more details. The proposed fix has low risk, since it affects debug-only code.
> 
> ##### Testing:
> 
> - tier1-3 (windows-x64, linux-x64, linux-aarch64, macosx-x64, and macosx-aarch64; release and debug mode)
> 
> - original RunThese8M test (using `-XX:+UseZGC -XX:+ZGenerational` on linux-x64, 20 repetitions)
> 
> Deriving a minimal regression test is ongoing work, but might take some time due to the complex nature of the failure (see analysis on JBS). To reduce noise in test pipelines and ease work on other open RunThese8M issues such as [JDK-8308048](https://bugs.openjdk.org/browse/JDK-8308048), I propose to integrate this fix first and contribute the minimal regression test later as a follow-up enhancement.

This pull request has now been integrated.

Changeset: 83d92672
Author:    Roberto Castañeda Lozano <rcastanedalo at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/83d92672d4c2637fc37ddd873533c85a9b083904
Stats:     9 lines in 1 file changed: 9 ins; 0 del; 0 mod

8303513: C2: LoadKlassNode::make fails with 'expecting TypeKlassPtr'

Reviewed-by: thartmann, kvn

-------------

PR: https://git.openjdk.org/jdk/pull/14463


More information about the hotspot-compiler-dev mailing list