[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-hotspot-dev
Subject:    RFR(S) 8209361: [AOT] Unexpected number of references for JVMTI_HEAP_REFERENCE_CONSTANT_POOL [111-->
From:       dean.long () oracle ! com
Date:       2018-08-31 0:20:56
Message-ID: 0068f831-ddff-5000-c7fc-7acefffc9756 () oracle ! com
[Download RAW message or body]

https://bugs.openjdk.java.net/browse/JDK-8209361
http://cr.openjdk.java.net/~dlong/8209361/webrev/

Some JCK vm/jvmti/FollowReferences tests fail with AOT.   This is because 
code generated by JIT and AOT compilers might not resolve constant pool 
entries.   Making the compiled code resolve constant pool entries would 
hurt performance.   As far as I can tell, the JVMTI FollowReferences API 
is the only place this is visible, so I went with a localized fix.   The 
fix looks at unresolved constant pool entries and treats them as 
resolved if the class is loaded and accessible.   Some entries can appear 
to be resolved early, but this is allowed by the JVM spec, and it meets 
all the requirements of a resolved symbolic reference (it will always 
return the same concrete class value, JVM spec section 5.4.3).

dl

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic