Integrated: 8303279: C2: crash in SubTypeCheckNode::sub() at IGVN split if

Roland Westrelin roland at openjdk.org
Tue Jul 11 16:02:27 UTC 2023


On Tue, 27 Jun 2023 14:40:49 GMT, Roland Westrelin <roland at openjdk.org> wrote:

> The crash occurs because at split if during IGVN, a `SubTypeCheck` is
> created with null as input. That happens because the control path the
> `SubTypeCheck` is cloned for is dead. To fix that I propose delaying
> split if until dead paths are collapsed.
> 
> I added an assert to check a nullable first input to `SubTypeCheck`
> nodes (which should be impossible because it should be null
> checked). When I ran testing, a number of cases showed up with known
> non null values non properly marked as non null. I fixed them.

This pull request has now been integrated.

Changeset: caadad4f
Author:    Roland Westrelin <roland at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/caadad4fdc78799dab2d492dba9b9f74b22d036e
Stats:     110 lines in 7 files changed: 94 ins; 4 del; 12 mod

8303279: C2: crash in SubTypeCheckNode::sub() at IGVN split if

Reviewed-by: kvn, vlivanov, thartmann, simonis

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

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


More information about the hotspot-compiler-dev mailing list