You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by wj...@apache.org on 2007/03/03 20:10:18 UTC

svn commit: r514221 - in /harmony/enhanced/drlvm/trunk: src/test/regression/H2086/ vm/vmcore/include/ vm/vmcore/src/kernel_classes/native/ vm/vmcore/src/thread/

Author: wjwashburn
Date: Sat Mar  3 11:10:18 2007
New Revision: 514221

URL: http://svn.apache.org/viewvc?view=rev&rev=514221
Log:
Harmony-2086 patch, support for VMSupportsCS8 function
build, build test passes on winxp32 and lin32 rhel4.0 w/ gcc 4.0.2


Added:
    harmony/enhanced/drlvm/trunk/src/test/regression/H2086/
    harmony/enhanced/drlvm/trunk/src/test/regression/H2086/Test.java
Modified:
    harmony/enhanced/drlvm/trunk/vm/vmcore/include/atomics.h
    harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp
    harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h
    harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/atomics.cpp

Added: harmony/enhanced/drlvm/trunk/src/test/regression/H2086/Test.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/src/test/regression/H2086/Test.java?view=auto&rev=514221
==============================================================================
--- harmony/enhanced/drlvm/trunk/src/test/regression/H2086/Test.java (added)
+++ harmony/enhanced/drlvm/trunk/src/test/regression/H2086/Test.java Sat Mar  3 11:10:18 2007
@@ -0,0 +1,6 @@
+public class Test {
+    public static void main(String[] args) {
+        java.util.concurrent.atomic.AtomicLong al = 
+            new java.util.concurrent.atomic.AtomicLong();
+    }
+}

Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/include/atomics.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/include/atomics.h?view=diff&rev=514221&r1=514220&r2=514221
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/vmcore/include/atomics.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/vmcore/include/atomics.h Sat Mar  3 11:10:18 2007
@@ -58,6 +58,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) 

Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp?view=diff&rev=514221&r1=514220&r2=514221
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.cpp Sat Mar  3 11:10:18 2007
@@ -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();
+}

Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h?view=diff&rev=514221&r1=514220&r2=514221
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/kernel_classes/native/org_apache_harmony_util_concurrent_Atomics.h Sat Mar  3 11:10:18 2007
@@ -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

Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/atomics.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/atomics.cpp?view=diff&rev=514221&r1=514220&r2=514221
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/atomics.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/atomics.cpp Sat Mar  3 11:10:18 2007
@@ -262,3 +262,7 @@
     tmn_suspend_enable();
     return (jboolean)(result?JNI_TRUE:JNI_FALSE);
 }
+
+JNIEXPORT jboolean vmSupportsCAS8() {
+    return JNI_TRUE;
+}