[9] RFR(M): 8076112: Add @HotSpotIntrinsicCandidate annotation to indicate methods for which Java Runtime has intrinsics

Zoltán Majó zoltan.majo at oracle.com
Fri Jun 26 05:08:36 UTC 2015


Hi Joe,


On 06/25/2015 07:30 PM, joe darcy wrote:
> Hi Zoltán,
>
> The changes to the wrapper classes (java.lang.Integer, 
> java.lang.Double, ...), the Math and StrictMath libraries, and the new 
> annotation type look fine.

thank you for the review!

Best regards,


Zoltán

>
> Thanks,
>
> -Joe
>
> On 6/25/2015 4:49 AM, Zoltán Majó wrote:
>> 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 core-libs-dev mailing list