[lworld] Integrated: 8262287: [lworld] C2 compilation fails with assert "should have been removed from the graph"

Roland Westrelin roland at openjdk.java.net
Fri Mar 12 14:54:17 UTC 2021


On Thu, 4 Mar 2021 16:31:42 GMT, Roland Westrelin <roland at openjdk.org> wrote:

> hook_memory_on_init() sets up memory edges so stores can be captured
> at an allocation. To do that, it adds extra edges for each field after
> and before the InitializeNode. This also happens for flat arrays
> eventhough until Compile::adjust_flattened_array_access_aliases() runs
> there's a single slice for all fields of a flat array element. The
> extra edges added after the InitalizeNode can cause PhiNodes to be
> created for each fields of the array element which confuses
> Compile::adjust_flattened_array_access_aliases() (because it expects
> no Phi for individual fields until it runs). I don't think the memory
> edges out of the InitializeNode are needed as
> Compile::adjust_flattened_array_access_aliases() should create
> them. So I propose not adding them.

This pull request has now been integrated.

Changeset: c2c4b2f7
Author:    Roland Westrelin <roland at openjdk.org>
URL:       https://git.openjdk.java.net/valhalla/commit/c2c4b2f7
Stats:     42 lines in 4 files changed: 40 ins; 0 del; 2 mod

8262287: [lworld] C2 compilation fails with assert "should have been removed from the graph"

Reviewed-by: thartmann

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

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


More information about the valhalla-dev mailing list