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
Hi,
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:
https://bugs.openjdk.java.net/browse/JDK-8233019
https://hg.openjdk.java.net/jdk-updates/jdk11u/rev/e1b6631cbd2f
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:
http://cr.openjdk.java.net/~fyang/8233019-8u/webrev.00
Performed full jtreg test on both aarch64 and x86_64 linux platforms.
Thanks,
Felix
[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