Integrated: 8308583: SIGSEGV in GraphKit::gen_checkcast

Roland Westrelin roland at openjdk.org
Fri May 26 07:07:08 UTC 2023


On Wed, 24 May 2023 12:31:37 GMT, Roland Westrelin <roland at openjdk.org> wrote:

> At an `instanceof`, a node of type `bottom[int:>=0]` is checked to be of type `cc$Word` and on the success a `CheckCastPP` is inserted to change the node type. That `CheckCastPP` constant folds to `top` but the type check doesn't fold. The reason is that the type check loads the klass from the node with a `LoadNKlass` and the type of that node is `java/lang/Object`  when it should be `bottom[int:>=0]` but logic in `LoadNKlass::Value()` gets in the way.

This pull request has now been integrated.

Changeset: 199b1bf5
Author:    Roland Westrelin <roland at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/199b1bf5009120efd1fd37a1ddabc0c6fb84f62c
Stats:     110 lines in 3 files changed: 102 ins; 0 del; 8 mod

8308583: SIGSEGV in GraphKit::gen_checkcast

Reviewed-by: thartmann, kvn, never

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

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


More information about the hotspot-compiler-dev mailing list