Index: vm/vmcore/include/atomics.h =================================================================== --- vm/vmcore/include/atomics.h (revision 472073) +++ vm/vmcore/include/atomics.h (working copy) @@ -54,6 +54,8 @@ JNIEXPORT jboolean compareAndSetLongArray (JNIEnv * env, jobject self, jlongArray array, jint index, jlong expected, jlong value); +JNIEXPORT jboolean vmSupportsCAS8(); + //void MemoryReadWriteBarrier(); #if defined (PLATFORM_POSIX) Index: vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h =================================================================== --- vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h (revision 472073) +++ vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h (working copy) @@ -156,6 +156,12 @@ JNIEXPORT jboolean JNICALL Java_org_apache_harmony_util_concurrent_Atomics_compareAndSetObject___3Ljava_lang_Object_2ILjava_lang_Object_2Ljava_lang_Object_2 (JNIEnv *, jobject, jobjectArray, jint, jobject, jobject); +/* + * Method: java.util.concurrent.atomic.AtomicLong.VMSupportsCS8()Z + */ +JNIEXPORT jboolean JNICALL Java_java_util_concurrent_atomic_AtomicLong_VMSupportsCS8 + (JNIEnv *, jclass); + #ifdef __cplusplus } #endif Index: vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp =================================================================== --- vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp (revision 472073) +++ vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp (working copy) @@ -162,3 +162,10 @@ { return compareAndSetObjectArray(env, self, array, index, expected, value); } + +JNIEXPORT jboolean JNICALL +Java_java_util_concurrent_atomic_AtomicLong_VMSupportsCS8 +(JNIEnv *, jclass) +{ + return vmSupportsCAS8(); +} Index: vm/vmcore/src/thread/atomics.cpp =================================================================== --- vm/vmcore/src/thread/atomics.cpp (revision 472073) +++ vm/vmcore/src/thread/atomics.cpp (working copy) @@ -262,3 +262,7 @@ tmn_suspend_enable(); return (jboolean)(result?JNI_TRUE:JNI_FALSE); } + +JNIEXPORT jboolean vmSupportsCAS8() { + return JNI_TRUE; +}