RFR: 8370502: C2: segfault while adding node to IGVN worklist [v5]
Dean Long
dlong at openjdk.org
Wed Dec 3 00:07:08 UTC 2025
On Tue, 2 Dec 2025 13:32:22 GMT, Kerem Kat <krk at openjdk.org> wrote:
>> Do not try to replace `fallthrough_memproj` when it is null, fixes crash.
>>
>> Test case is simplified from the ticket. Verified that the case crashes without the fix.
>
> Kerem Kat has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 10 additional commits since the last revision:
>
> - Merge branch 'master' into fix-c2-segfault-unlocknode
> - address comments
> - fix rename
> - rename test file
> - Merge branch 'master' into fix-c2-segfault-unlocknode
> - fix test spacing
> - Update src/hotspot/share/opto/macro.cpp
>
> Co-authored-by: Manuel Hässig <manuel at haessig.org>
> - Update src/hotspot/share/opto/macro.cpp
>
> Co-authored-by: Manuel Hässig <manuel at haessig.org>
> - copyright format fix?
> - 8370502: C2: segfault while adding node to IGVN worklist
Yes, it would be good to know if expand_lock_node() also needs a null check. I was assuming the lock and unlock node shapes were basically the same, but now I see that the shapes are different for some reason. The LockNode gets a FastLockNode edge early, while the UnlockNode creates its FastUnlockNode late. I failed to get expand_lock_node() to crash with -XX:+StressMacroExpansion but that doesn't mean there isn't the same problem there.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/28432#issuecomment-3604455582
More information about the hotspot-compiler-dev
mailing list