Integrated: 8271911: replay compilations of methods which use JSR292 (easy cases)

Dean Long dlong at openjdk.java.net
Fri Sep 3 23:26:48 UTC 2021


On Thu, 26 Aug 2021 23:11:44 GMT, Dean Long <dlong at openjdk.org> wrote:

> There is a subset of the general problem that we should be able to solve by looking at invokedynamic/invokehandle call sites and MethodHandle constant pool entries. If a replay references a hidden class that is discoverable in one of those locations, then we can use the location as a replacement for the transient VM name.
> 
> Examples of references to hidden class locations:
> 
> @bci compiler/ciReplay/CiReplayBase$TestMain test (I)V 1 <appendix> argL0 ;
> @bci compiler/ciReplay/CiReplayBase$TestMain main ([Ljava/lang/String;)V 0 <appendix> form vmentry <vmtarget> ;
> @cpi compiler/ciReplay/CiReplayBase$TestMain 56 form vmentry <vmtarget> ;

This pull request has now been integrated.

Changeset: 14a3ac09
Author:    Dean Long <dlong at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/14a3ac09fe504ea97d269b78872bef6021c976fd
Stats:     745 lines in 11 files changed: 713 ins; 9 del; 23 mod

8271911: replay compilations of methods which use JSR292 (easy cases)
8012267: ciReplay: fails to resolve @SignaturePolymorphic methods in replay data
8012268: ciReplay: process_ciInstanceKlass: JVM_CONSTANT_MethodHandle not supported

Reviewed-by: kvn, vlivanov

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

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


More information about the hotspot-compiler-dev mailing list