* libjava.lang/SyncTest.java: New file.
authorjsturm <jsturm@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 31 Jul 2001 02:13:46 +0000 (02:13 +0000)
committerjsturm <jsturm@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 31 Jul 2001 02:13:46 +0000 (02:13 +0000)
* libjava.lang/SyncTest.out: New file.
* libjava.lang/SyncTest.xfail: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44495 138bc75d-0d04-0410-961f-82ee72b054a4

libjava/testsuite/ChangeLog
libjava/testsuite/libjava.lang/SyncTest.java [new file with mode: 0644]
libjava/testsuite/libjava.lang/SyncTest.out [new file with mode: 0644]
libjava/testsuite/libjava.lang/SyncTest.xfail [new file with mode: 0644]

index 8889313..ae3101f 100644 (file)
@@ -1,3 +1,9 @@
+2001-07-30  Jeff Sturm  <jsturm@one-point.com>
+
+       * libjava.lang/SyncTest.java: New file.
+       * libjava.lang/SyncTest.out: New file.
+       * libjava.lang/SyncTest.xfail: New file.
+
 2001-07-27  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
 
        * lib/libjava.exp (${tool}_set_ld_library_path): New, copied from
diff --git a/libjava/testsuite/libjava.lang/SyncTest.java b/libjava/testsuite/libjava.lang/SyncTest.java
new file mode 100644 (file)
index 0000000..7cb6a56
--- /dev/null
@@ -0,0 +1,31 @@
+// Test atomic increment via synchronized blocks.
+public class SyncTest implements Runnable {
+  static int counter;
+
+  public void run() {
+    for (int n = 0; n < 1000000; n++)
+      synchronized (SyncTest.class) {
+        counter++;
+      }
+  }
+
+  public static void main(String[] args) {
+    SyncTest test = new SyncTest();
+    Thread[] thr = new Thread[4];
+
+    for (int n = 0; n < thr.length; n++) {
+      thr[n] = new Thread(test);
+      thr[n].start();
+    }
+
+    for (int n = 0; n < thr.length; n++) {
+      try {
+        thr[n].join();
+      } catch (InterruptedException ex) {
+      }
+    }
+
+    System.out.println(counter == 1000000 * thr.length ?
+      "ok" : "fail: " + counter);
+  }
+}
diff --git a/libjava/testsuite/libjava.lang/SyncTest.out b/libjava/testsuite/libjava.lang/SyncTest.out
new file mode 100644 (file)
index 0000000..9766475
--- /dev/null
@@ -0,0 +1 @@
+ok
diff --git a/libjava/testsuite/libjava.lang/SyncTest.xfail b/libjava/testsuite/libjava.lang/SyncTest.xfail
new file mode 100644 (file)
index 0000000..3f95317
--- /dev/null
@@ -0,0 +1 @@
+need-threads