-
Notifications
You must be signed in to change notification settings - Fork 153
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
8262017: C2: assert(n != __null) failed: Bad immediate dominator info. #528
Conversation
👋 Welcome back fferrari! A progress list of the required criteria for merging this PR into |
@franferrax This change now passes all automated pre-integration checks. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 2 new commits pushed to the
Please see this link for an up-to-date comparison between the source branch of this pull request and the As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@martinuy, @rwestrel) but any other Committer may sponsor as well. ➡️ To flag this PR as ready for integration with the above commit message, type |
This backport pull request has now been updated with issue from the original commit. |
Webrevs
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for proposing this backport. Looks good to me.
|
I had GitHub actions disabled (default when forking), triggering execution by pushing an empty commit (so the review is not invalidated).
Attempt to backport JDK-8205407 in the 8u build system: Summary: [windows, vs<2017] C4800 after 8203197 URL: https://bugs.openjdk.org/browse/JDK-8205407
/issue add 8205407 |
@franferrax |
@rwestrel Could you please help review this? Thanks! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me.
/approval 8262017 request jdk8u is affected by this bug and would benefit from its fix. The patch does not apply cleanly but has been reviewed. |
/approval 8205407 request This issue is a dependency for the JDK-8262017 backport in jdk8u. |
@franferrax |
@franferrax |
/approve yes |
@jerboaa |
/integrate |
@franferrax |
/sponsor |
Going to push as commit 385e34d.
Your commit was automatically rebased without conflicts. |
@martinuy @franferrax Pushed as commit 385e34d. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
JDK-8262017 backport
Hi, this is a backport of JDK-8262017: C2: assert(n != __null) failed: Bad immediate dominator info. As explained in the 11u backport (openjdk/jdk11u-dev#156), this also introduces parts from JDK-8244504.
This backport is not clean because of the changed paths (JDK-8187443) and the removal of the
Compile* C
parameter from the nodes allocationnew
operator (JDK-8034812). Besides the conflicts, new code inopto/addnode.cpp
had to be adjusted to introduce the mentionedCompile* C
parameter.Finally, the
opto/movenode.hpp
include inopto/addnode.cpp
had to be removed.opto/movenode.hpp
doesn't exist in 8u, andCMoveLNode
is defined inopto/connode.hpp
instead, which is already included byopto/addnode.cpp
.Apart from those cosmetic adjustments, the change is not substantially different from openjdk/jdk11u-dev@293d44f.
Testing
hotspot_tier1
showed no regression with a Linux x86-64 slowdebug buildhotspot/test/compiler/ciReplay/TestSA.sh
was the only failing test, with and without this PR changeshotspot/test/compiler/rangechecks/TestRangeCheckLimits.java
is passingJDK-8205407 backport
As part of this patch, the following code caused warning C4800 in Windows x86, treated as error C2220:
jdk8u-dev/hotspot/src/share/vm/opto/addnode.cpp
Line 838 in 590ef75
jdk8u-dev/hotspot/src/share/vm/opto/addnode.cpp
Line 889 in 590ef75
Build log:
My personal preference would have been to fix it in the code, but this didn't happen in neither the original code nor the 11u backport. The reason is that this warning is ignored since JDK 11's JDK-8205407 (openjdk/jdk11u-dev@8c5dfa2). We can see it's still ignored in mainline, where
DISABLED_WARNINGS
unifiesWARNING_CFLAGS_JDK
andWARNING_CFLAGS_JVM
since JDK 12's JDK-8210988 (openjdk/jdk12u@09a967a).In order to keep coherence with the newer code and ease any future backport facing the same issue, I decided to include a JDK-8205407 (openjdk/jdk11u-dev@8c5dfa2) backport in this pull request. Since
WARNING_CFLAGS_JVM
was introduced in JDK 11 by JDK-8198724 (openjdk/jdk11u-dev@b64d0ef), after JDK 9's JDK-8152666 (openjdk/jdk9u@e709aa2), the right placement for ignoring this warning tracks down tohotspot/make/windows/makefiles/compile.make
.Progress
Issues
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk8u-dev.git pull/528/head:pull/528
$ git checkout pull/528
Update a local copy of the PR:
$ git checkout pull/528
$ git pull https://git.openjdk.org/jdk8u-dev.git pull/528/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 528
View PR using the GUI difftool:
$ git pr show -t 528
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk8u-dev/pull/528.diff
Webrev
Link to Webrev Comment