Integrated: 8335120: assert(!target->can_be_statically_bound() || target == cha_monomorphic_target) failed

Dean Long dlong at openjdk.org
Thu Aug 29 00:37:24 UTC 2024


On Tue, 27 Aug 2024 16:11:22 GMT, Dean Long <dlong at openjdk.org> wrote:

> The failing test uses class redefinition, which happen at safepoints.  Because JIT compiler threads do not block safepoints, compiler threads can sometimes see multiple versions of the same method.  The above assert can fail if target and cha_monomorphic_target are different versions of the same method.  The fix is to introduce ciMethod::equals to deal with this possibility.

This pull request has now been integrated.

Changeset: 0ddcd701
Author:    Dean Long <dlong at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/0ddcd7017576a0f9c97a74b7d47624ae06ed06d6
Stats:     19 lines in 3 files changed: 18 ins; 0 del; 1 mod

8335120: assert(!target->can_be_statically_bound() || target == cha_monomorphic_target) failed

Reviewed-by: kvn, vlivanov

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

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


More information about the hotspot-compiler-dev mailing list