jdk
jdk copied to clipboard
8331885: C2: meet between unloaded and speculative types is not symmetric
TypeInstPtr::xmeet_unloaded
computes the MEET of two InstPtrs when at least one is unloaded, but doesn't preserve speculative part if one is present. It causes the corresponding assert to fail.
Proposed fix unconditionally keeps speculative part.
Testing: hs-tier1 - hs-tier4
Progress
- [x] Change must be properly reviewed (1 review required, with at least 1 Reviewer)
- [x] Change must not contain extraneous whitespace
- [x] Commit message must refer to an issue
Issue
- JDK-8331885: C2: meet between unloaded and speculative types is not symmetric (Bug - P3)
Reviewers
- Roland Westrelin (@rwestrel - Reviewer) ⚠️ Review applies to fa5479f2
- Tobias Hartmann (@TobiHartmann - Reviewer) ⚠️ Review applies to fa5479f2
Reviewing
Using git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/19249/head:pull/19249
$ git checkout pull/19249
Update a local copy of the PR:
$ git checkout pull/19249
$ git pull https://git.openjdk.org/jdk.git pull/19249/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 19249
View PR using the GUI difftool:
$ git pr show -t 19249
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/19249.diff
Webrev
:wave: Welcome back vlivanov! A progress list of the required criteria for merging this PR into master
will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.
@iwanowww This change now passes all automated pre-integration checks.
ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.
After integration, the commit message for the final commit will be:
8331885: C2: meet between unloaded and speculative types is not symmetric
Reviewed-by: roland, thartmann
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 37 new commits pushed to the master
branch:
- d4c2edf2c91a790874c80f1a7bea5bfd4f438bde: 8331855: Convert jdk.jdeps jdeprscan and jdeps to use the Classfile API
- beeffd4671649e5d8f9c96f0455ac90a82917234: 8332109: Convert remaining tests using com.sun.tools.classfile to ClassFile API
- e0d1c4b38c7ad2dc67f3d14b0b179b313c85fc0a: 8321428: Deprecate for removal the package java.beans.beancontext
- 0b0445be2833286b4eace698b91a658de3e7608b: 8331724: Refactor j.l.constant implementation to internal package
- d84a8fd8762fe9448e73d75ec9dc8c4876b1a709: 8332327: Return _methods_jmethod_ids field back in VMStructs
- f1ce9b0ecce9b506f5bf7a66fcf03c93b9ae8fed: 8331557: Serial: Refactor SerialHeap::do_collection
- 14198f502f0a721e479adc754a2c7d94b665fbe6: 8329653: JLILaunchTest fails on AIX after JDK-8329131
- ae999eae7e61072ad964a43f622fa930ce1179f7: 8129418: JShell: better highlighting of errors in imports on demand
- 6422efa3c7917525a879e80657ca4dcfb6d67514: 8332394: Add friendly output when @IR rule missing value
- 9160ef8b9d9f2c87ca6df08d85dad4271085f0ac: 8332237: [nmt] Remove the need for ThreadStackTracker::track_as_vm()
- ... and 27 more: https://git.openjdk.org/jdk/compare/8032d640c0d34fe507392a1d4faa4ff2005c771d...master
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.
➡️ To integrate this PR with the above commit message to the master
branch, type /integrate in a new comment.
@iwanowww The following label will be automatically applied to this pull request:
-
hotspot-compiler
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command.
@iwanowww - Will this fix be integrated soon? There are two solid failures in every Tier5 job set and have been for quite a while.
Thanks for the reviews, Roland and Tobias.
hs-comp-stress and hs-precheckin-comp testing passed.
/integrate
Going to push as commit 7652f9811bfddf08650b0c3277012074873deade.
Since your change was applied there have been 47 commits pushed to the master
branch:
- d6b7f9b170b6ce4f7275cc7595b71b9a3e93c133: 8331851: Add specific regression leap year tests for Calendar.roll()
- b92bd671835c37cff58e2cdcecd0fe4277557d7f: 8332403: Anachronistic reference to Netscape Communicator in Swing API docs
- 8acdd2d7c8de17515b87815d54ce556237039406: 8330565: C2: Multiple crashes with CTW after JDK-8316991
- 0a58cffe88ba823e71fcdcca64b784ed04ca5398: 8298405: Implement JEP 467: Markdown Documentation Comments
- 39a55e97799b5328da85aaa66c8d23175b305691: 8324809: compiler can crash with SOE while proving if two recursive types are disjoint
- b7ae0ae1d7481e66a07f40bf01c5614fdf44c2ed: 8328572: JFR: Use Class.forPrimitiveName(String)
- e611151796d71c40a9395cb6fbe734f36d4c1b55: 8331281: RISC-V: C2: Support vector-scalar and vector-immediate bitwise logic instructions
- 44bdf9964eb2dd0eb4034576e1f903a27c410286: 8332239: Improve CSS for block tags
- 9bb6169a1cba900fa79d63119696efe265762083: 8317621: --add-script should support JavaScript modules
- 4eb1eaf04477b9a8947a57655cf36380b5b88b5c: 8329617: Update stylesheet for specs and tool documentation
- ... and 37 more: https://git.openjdk.org/jdk/compare/8032d640c0d34fe507392a1d4faa4ff2005c771d...master
Your commit was automatically rebased without conflicts.
@iwanowww Pushed as commit 7652f9811bfddf08650b0c3277012074873deade.
:bulb: You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.