[13] RFR (T/XS) 8223796: JVMCIEnv::get_jvmci_type does not keep klasses alive

Vladimir Kozlov vladimir.kozlov at oracle.com
Wed Jun 12 17:33:16 UTC 2019


Thank you, Igor

Vladimir

On 6/12/19 10:23 AM, Igor Veresov wrote:
> Looks good.
> 
> igor
> 
> 
> 
>> On Jun 12, 2019, at 9:27 AM, Vladimir Kozlov <vladimir.kozlov at oracle.com 
>> <mailto:vladimir.kozlov at oracle.com>> wrote:
>>
>> http://cr.openjdk.java.net/~kvn/8223796/webrev.00/
>> https://bugs.openjdk.java.net/browse/JDK-8223796
>>
>> The JVMCIEnv::get_jvmci_type() function has the block of code guarded by #ifdef INCLUDE_ALL_GCS 
>> and calls G1SATBCardTableModRefBS::enqueue() to keep Klass alive. However, the INCLUDE_ALL_GCS 
>> does not exist in jdk13 and the G1SATBCardTableModRefBS class does not exist either. We use the 
>> Access API to keep things alive.
>>
>> Erik Österlund wrote:
>> "I think the klass handle looking thing (JVMCIKlassHandle) you get passed in already did 
>> klass_holder() and put that in a handle [1]. klass_holder() didn’t use to keep things alive but it 
>> does nowadays. Seems like removing the G1 stuff and the comment should be enough for jdk-jdk."
>>
>> I removed this code as Erik suggested.
>>
>> Thanks,
>> Vladimir
>>
>> [1] 
>> http://hg.openjdk.java.net/jdk/jdk/file/f492567244ab/src/hotspot/share/jvmci/jvmciCompilerToVM.cpp#l50
> 


More information about the hotspot-compiler-dev mailing list