Integrated: 8330247: C2: CTW fail with assert(adr_t->is_known_instance_field()) failed: instance required

Cesar Soares Lucas cslucas at openjdk.org
Fri May 3 23:43:56 UTC 2024


On Fri, 19 Apr 2024 00:35:16 GMT, Cesar Soares Lucas <cslucas at openjdk.org> wrote:

> The logic in reduce allocation merges (RAM) makes use of `PhaseMacroExpand:;can_eliminate_allocation` to check whether an allocation can be scalar replaced. However, we can only SR allocations of exact types - due to rematerialization logic.
> 
> The scalar replacement logic not related to RAM has this check in `split_unique_types` so there is no performance regression by adding this check here.
> 
> Tested on Linux x64 tiers1-3.

This pull request has now been integrated.

Changeset: 9347bb7d
Author:    Cesar Soares Lucas <cslucas at openjdk.org>
Committer: Vladimir Kozlov <kvn at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/9347bb7df845ee465c378c6f511ef8a6caea18ea
Stats:     76 lines in 2 files changed: 76 ins; 0 del; 0 mod

8330247: C2: CTW fail with assert(adr_t->is_known_instance_field()) failed: instance required

Reviewed-by: kvn

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

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


More information about the hotspot-compiler-dev mailing list