[jdk8u-dev] RFR: 8262017: C2: assert(n != __null) failed: Bad immediate dominator info.
Francisco Ferrari Bihurriet
fferrari at openjdk.org
Wed Jun 26 16:17:41 UTC 2024
Hi, this is a backport of [JDK-8262017: C2: assert(n != __null) failed: Bad immediate dominator info](https://bugs.openjdk.org/browse/JDK-8262017). As explained in the 11u backport (openjdk/jdk11u-dev#156), this also introduces parts from [JDK-8244504](https://bugs.openjdk.org/browse/JDK-8244504 "C2: refactor counted loop code in preparation for long counted loop").
This backport is not clean because of the changed paths ([JDK-8187443](https://bugs.openjdk.org/browse/JDK-8187443 "Forest Consolidation: Move files to unified layout")) and the removal of the `Compile* C` parameter from the nodes allocation `new` operator ([JDK-8034812](https://bugs.openjdk.org/browse/JDK-8034812 "remove IDX_INIT macro hack in Node class")). Besides the conflicts, new code in `opto/addnode.cpp` had to be adjusted to introduce the mentioned `Compile* C` parameter.
Finally, the `opto/movenode.hpp` include in `opto/addnode.cpp` had to be removed. `opto/movenode.hpp` doesn't exist in 8u, and `CMoveLNode` is defined in `opto/connode.hpp` instead, which is already included by `opto/addnode.cpp`.
Apart from those cosmetic adjustments, the change is not substantially different from openjdk/jdk11u-dev at 293d44f6cf07b05ad5e3a8b0c08b244f1697700d.
## Testing
* `hotspot_tier1` showed no regression with a _Linux_ x86-64 slowdebug build
* `hotspot/test/compiler/ciReplay/TestSA.sh` was the only failing test, with and without this PR changes
* In addition, the new `hotspot/test/compiler/rangechecks/TestRangeCheckLimits.java` is passing
-------------
Commit messages:
- Backport 2db9005c07585b580b3ec0889b8b5e3ed0d0ca6a
Changes: https://git.openjdk.org/jdk8u-dev/pull/528/files
Webrev: https://webrevs.openjdk.org/?repo=jdk8u-dev&pr=528&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8262017
Stats: 311 lines in 4 files changed: 299 ins; 4 del; 8 mod
Patch: https://git.openjdk.org/jdk8u-dev/pull/528.diff
Fetch: git fetch https://git.openjdk.org/jdk8u-dev.git pull/528/head:pull/528
PR: https://git.openjdk.org/jdk8u-dev/pull/528
More information about the jdk8u-dev
mailing list