[9] RFR(M): 8076112: Add @HotSpotIntrinsicCandidate annotation to indicate methods for which Java Runtime has intrinsics
Zoltán Majó
zoltan.majo at oracle.com
Thu Jun 25 11:49:17 UTC 2015
Hi,
please review the patch for JDK-8076112.
Bug: https://bugs.openjdk.java.net/browse/JDK-8076112
Problem: There is need to indicate Java methods that are potentially
intrinsified by JVM.
Solution: Mark intrinsified methods with the
jdk.internal.HotSpotIntrinsicCandidate annotation. Add checks that are
omitted by VM-level intrinsics to the library code. Add a new diagnostic
flag, CheckIntrinsics. If CheckIntrinsics is enabled, the VM performs
the following checks when a class C is loaded:
- all intrinsics defined by the VM for class C are present in the loaded
class file and are marked;
- an intrinsic is defined by the VM for all marked methods of C.
If a mismatch is detected, the following is done:
- a fastdebug VM prints a warning and then exits;
- a product VM prints a warning and unmarked are not intrinsified.
Webrev:
- top: http://cr.openjdk.java.net/~zmajo/8076112/top/webrev.05/
- jdk: http://cr.openjdk.java.net/~zmajo/8076112/jdk/webrev.05/
- hotspot: http://cr.openjdk.java.net/~zmajo/8076112/hotspot/webrev.05/
Testing:
- JPRT run with the 'hotspot' testset, all tests pass;
- all JTREG hotspot tests, all tests pass that pass with a VM version
that does not include the patch; all tests were run with
-XX:+CheckIntrinsics.
Thank you and best regards,
Zoltan
More information about the security-dev
mailing list