[lworld] Integrated: 8261874: [lworld] Non-flattened array blocks scalarization of inline type

Tobias Hartmann thartmann at openjdk.java.net
Fri Feb 19 08:29:06 UTC 2021

On Thu, 18 Feb 2021 15:14:26 GMT, Tobias Hartmann <thartmann at openjdk.org> wrote:

> We hit an assert because an inline type is not scalarized in the debug info of a safepoint. The problem is that the inline type is stored in a non-flattened array which blocks scalarization. Once the non-flattened array is scalarized itself, the inline type could be scalarized as well but we don't keep track of its field values long enough (we remove the `InlineTypePtrNode` before macro expansion). The solution is to keep `InlineTypePtrNodes` until after macro expansion. I've also converted scalarization in safepoints into an ideal transformation, refactored related code and added the corresponding IR verification tests.
> Best regards,
> Tobias

This pull request has now been integrated.

Changeset: e88ff83c
Author:    Tobias Hartmann <thartmann at openjdk.org>
URL:       https://git.openjdk.java.net/valhalla/commit/e88ff83c
Stats:     176 lines in 7 files changed: 127 ins; 25 del; 24 mod

8261874: [lworld] Non-flattened array blocks scalarization of inline type


PR: https://git.openjdk.java.net/valhalla/pull/342

More information about the valhalla-dev mailing list