RFR: 8233019: java.lang.Class.isPrimitive() (C1) returns wrong result if Klass* is aligned to 32bit

Yangfei (Felix) felix.yang at huawei.com
Mon Apr 26 12:52:11 UTC 2021


I find issue JDK-8239477 [1] is triggering for 16 jfr jtreg tests with fastdebug build. 
Fix for this issue depends on JDK-8233019 as it emits a compare with metadataConst(0). 
So need to backport JDK-8233019 first. 

Original bug:

Original patch does not apply to 8u cleanly. Two adaptations are made for 8u: 
1. Discarded changes in file c1_LIRGenerator.cpp as JDK-8150669 [2] is not there in 8u. 
2. Added new test hotspot/test/compiler/intrinsics/class/TestClassIsPrimitive.java which was introduced by [2] and further modified by this issue. 

8u webrev:

Performed full jtreg test on both aarch64 and x86_64 linux platforms. 


[1] https://bugs.openjdk.java.net/browse/JDK-8239477 
[2] https://bugs.openjdk.java.net/browse/JDK-8150669 

More information about the jdk8u-dev mailing list