Integrated: 8279822: CI: Constant pool entries in error state are not supported

Vladimir Ivanov vlivanov at openjdk.java.net
Wed Feb 9 14:00:24 UTC 2022


On Tue, 1 Feb 2022 19:09:31 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

> Compiler interface doesn't expect to see constant pool entries in error state and crashes when those are encountered.
> 
> JDK-8262377 improved handling of class constants in error state (`JVM_CONSTANT_UnresolvedClassInError`), but there were more cases left unnoticed (`CONSTANT_MethodHandle`, `CONSTANT_MethodType`, and `CONSTANT_Dynamic`). 
> 
> Proposed fix introduces proper support in CI of unresolved constants in error state and improves handling of such cases in C1/C2.
> 
> Also,  for `CONSTANT_MethodHandle` it turned out that some of `LinkageError`s don't transition relevant CP entry into error state (leaving it in unresolved state forever). The fix addresses it.
> 
> Testing: hs-tier1 - hs-tier6

This pull request has now been integrated.

Changeset: c5c8c064
Author:    Vladimir Ivanov <vlivanov at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/c5c8c0644d9442846de15422285fffeb91c3e0a1
Stats:     451 lines in 10 files changed: 361 ins; 48 del; 42 mod

8279822: CI: Constant pool entries in error state are not supported

Reviewed-by: kvn, thartmann

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

PR: https://git.openjdk.java.net/jdk/pull/7314


More information about the hotspot-compiler-dev mailing list