[jdk17] RFR: 8269285: Crash/miscompile in CallGenerator::for_method_handle_inline after JDK-8191998 [v3]

Aleksey Shipilev shade at openjdk.java.net
Wed Jun 30 16:44:31 UTC 2021


> See the bug report for more details.
> 
> I believe the [JDK-8191998](https://bugs.openjdk.java.net/browse/JDK-8191998) change introduced a slight regression, where the speculative type join may empty the type. It would then crash on assert in `fastdebug` builds, or miscompile the null-check to `true` in `release` bits. New test captures both failure modes.
> 
> This is not a recent regression, but a regression nevertheless, so I would like to have that fix in JDK 17. Please review carefully, or speak up if you want to move it to JDK 18+ and then backport later.
> 
> Additional testing:
>  - [x] New test fails without the patch, passes with it
>  - [x] Linux x86_64 `fastdebug` `tier1`

Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:

  Use filter_speculative

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

Changes:
  - all: https://git.openjdk.java.net/jdk17/pull/169/files
  - new: https://git.openjdk.java.net/jdk17/pull/169/files/3ef5b96a..02e01bbd

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk17&pr=169&range=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk17&pr=169&range=01-02

  Stats: 10 lines in 1 file changed: 0 ins; 6 del; 4 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/169.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/169/head:pull/169

PR: https://git.openjdk.java.net/jdk17/pull/169


More information about the hotspot-compiler-dev mailing list