RFR: 8331085: Crash in MergePrimitiveArrayStores::is_compatible_store()

Emanuel Peter epeter at openjdk.org
Tue May 7 05:43:07 UTC 2024


In the `MergeStore` logic, I check the `adr_type()`. But in some rare cases this can be a `nullptr`, I did not expect that.

Exampe: during IGVN, the address is dying, with TOP somewhere in the inputs.

   1 Con === 0 [[ ]] #top
1022 AddP === _ 1 1 41 [[ 1019 1021 ]] !orig=539,[572] !jvms: Test::dMeth @ bci:223 (line 35)
1019 StoreI === 1128 827 1022 1020 [[ 1075 541 1073 574 ]] @int[int:>=0] (java/lang/Cloneable,java/io/Serializable):exact+any *, idx=6; Memory: @null !orig=574,1068 !jvms: Test::dMeth @ bci:227 (line 35)

I now check for `nullptr`.

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

Commit messages:
 - 8331085

Changes: https://git.openjdk.org/jdk/pull/19103/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19103&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8331085
  Stats: 64 lines in 2 files changed: 63 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/19103.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19103/head:pull/19103

PR: https://git.openjdk.org/jdk/pull/19103


More information about the hotspot-compiler-dev mailing list