[jdk8u-dev] RFR: 8303466: C2: failed: malformed control flow. Limit type made precise with MaxL/MinL

Martin Balao mbalao at openjdk.org
Fri Jun 28 17:58:24 UTC 2024


On Thu, 27 Jun 2024 21:21:10 GMT, Martin Balao <mbalao at openjdk.org> wrote:

> Hi,
> 
> I would like to propose a backport of 8303466 [1] to jdk8u. jdk8u can benefit from this fix and having more accurate limit type information.
> 
> This pull request contains a backport of commit [8578e12c423ed61618e0b3ef81e5be3d18be1da2](https://github.com/openjdk/jdk11u-dev/commit/8578e12c423ed61618e0b3ef81e5be3d18be1da2) from the [openjdk/jdk11u-dev](https://github.com/openjdk/jdk11u-dev) repository.
> 
> This backport depends on [JDK-8262017](https://bugs.openjdk.org/browse/JDK-8262017).
> 
> The jdk11u patch does not apply cleanly because of the following:
> 
>  * hotspot/src/share/vm/opto/addnode.hpp
>    * 8u does not have 8212043. Manually applied the change.
> 
>  * hotspot/src/share/vm/runtime/vmStructs.cpp
>    * 8u does not have 8212043. Manually applied the change.
> 
>  * hotspot/src/share/vm/opto/macro.cpp
>    * 8u does not have 8204210. Manually applied the change.
>    * 8u does not have 8186027. Manually applied the change.
> 
>  * hotspot/src/share/vm/opto/loopTransform.cpp
>    * 8u does not have 8223142. In addition, 8u does not have 8034812. Manually applied the change.
>    * 8u does not have 8182299. Manually applied the change.
> 
> In addition, the following changes were made:
> 
>  * Nodes allocation follows the pattern "new (C) ..." instead of "new ...".
> 
>  * File locations were adjusted.
> 
>  * In addnode.cpp, 8u does not have 8284358 so the function "Node::set_req_X(uint i, Node *n, PhaseGVN *gvn)" is not available. Picked this function (declaration and definition) from 8284358.
> 
>  * In 8u, the jtreg VM prop vm.compiler2.enabled does not exist. C2 will likely be available and if the test were executed without C2, it should be harmless.
> 
> No regressions observed in hotspot:tier1.
> 
> Thanks,
> Martin.-
> 
> --
> [1] - https://bugs.openjdk.org/browse/JDK-8303466

GHA test failures notes:

The GHA test CheckAllocateAndSystemGC doesn't seem to be stable in Linux x86: it has failed before (see PR #427 and run [here](https://github.com/ktakakuri/jdk8u-dev/actions/runs/9544882784/job/26305218138#step:10:694)) and the failure looks unrelated to this change.

The GHA test TestCMSHeapSizeFlags doesn't seem to be stable either in Linux x86: in the previous run of this PR (before the rebase made after the integration of 8262017 to 8u-dev) it was passing for example, and no code changes were introduced between the two.

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

PR Comment: https://git.openjdk.org/jdk8u-dev/pull/529#issuecomment-2197399850


More information about the jdk8u-dev mailing list