Request for review (M): 7174218: remove AtomicLongCSImpl intrinsics
Krystal Mok
rednaxelafx at gmail.com
Thu Jun 7 13:48:20 PDT 2012
Thank you, Vladimir.
- Kris
On Fri, Jun 8, 2012 at 4:47 AM, Vladimir Kozlov
<vladimir.kozlov at oracle.com>wrote:
> This looks good.
>
> Thanks,
> Vladimir
>
>
> Krystal Mok wrote:
>
>> Hi all,
>>
>> Could I get a couple of review on this change, please?
>> https://gist.github.com/**2876357#file_remove_atomic_**
>> long_cs_impl_hotspot.patch<https://gist.github.com/2876357#file_remove_atomic_long_cs_impl_hotspot.patch>
>>
>> 7174218: remove AtomicLongCSImpl intrinsics
>>
>> There is some very old code that intrinsifies
>> sun.misc.AtomicLongCSImpl.get and attemptUpdate. Since AtomicLongCSImpl
>> got removed in JDK 7 (and doesn't exist in OpenJDK at all), we should also
>> remove the intrinsic code in C1 and C2 (including MachNodes and other
>> stuff).
>>
>> This change removed sun.misc.AtomicLongCSImpl from the list of well-known
>> classes and the list of declared intrinsics, and removed the corresponding
>> intrinsic implementation in C1 and C2.
>> For C2, LoadLLockedNode was found to be only used in these intrinsics,
>> thus also removed.
>> (StoreLConditionalNode is used in PhaseMacroExpand::expand_lock_**node(),
>> so it has to be kept.)
>>
>> Tested with SPECjvm2008 base run on 64-bit Client and Server VM on
>> x86-64, and CTW on SPECjvm2008.jar and jruby.jar. Results are clean.
>>
>> P.S. There's a typo in jvm.h in the jdk workspace. The following patch
>> syncs the change in this change to fix the typo. Could anybody help push it
>> to the jdk workspace?
>> https://gist.github.com/**2876357#file_remove_atomic_**
>> long_cs_impl_jdk.patch<https://gist.github.com/2876357#file_remove_atomic_long_cs_impl_jdk.patch>
>>
>> diff -r 7def50698e78 src/share/javavm/export/jvm.h
>> --- a/src/share/javavm/export/jvm.**h Thu May 24 16:15:58 2012 -0700
>> +++ b/src/share/javavm/export/jvm.**h Wed Jun 06 01:15:50 2012 +0800
>> @@ -595,7 +595,7 @@
>> JVM_AssertionStatusDirectives(**JNIEnv *env, jclass unused);
>> /*
>> - * java.util.concurrent.**AtomicLong
>> + * java.util.concurrent.atomic.**AtomicLong
>> */
>> JNIEXPORT jboolean JNICALL
>> JVM_SupportsCX8(void);
>>
>> Regards,
>> Kris
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20120608/629e6272/attachment.html
More information about the hotspot-compiler-dev
mailing list