You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by mf...@apache.org on 2007/06/18 13:32:38 UTC
svn commit: r548324 - in
/harmony/enhanced/drlvm/trunk/src/test/regression/H2092: ./ Test.java
run.test.xml
Author: mfursov
Date: Mon Jun 18 04:32:36 2007
New Revision: 548324
URL: http://svn.apache.org/viewvc?view=rev&rev=548324
Log:
HARMONY-2092: fixes for volatile longs handling in Jitrino.OPT and Jitrino.JET jits with regression test.
Added:
harmony/enhanced/drlvm/trunk/src/test/regression/H2092/
harmony/enhanced/drlvm/trunk/src/test/regression/H2092/Test.java
harmony/enhanced/drlvm/trunk/src/test/regression/H2092/run.test.xml
Added: harmony/enhanced/drlvm/trunk/src/test/regression/H2092/Test.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/src/test/regression/H2092/Test.java?view=auto&rev=548324
==============================================================================
--- harmony/enhanced/drlvm/trunk/src/test/regression/H2092/Test.java (added)
+++ harmony/enhanced/drlvm/trunk/src/test/regression/H2092/Test.java Mon Jun 18 04:32:36 2007
@@ -0,0 +1,52 @@
+
+package org.apache.harmony.drlvm.tests.regression.H2092;
+
+import junit.framework.TestCase;
+
+public class Test extends TestCase {
+
+ static int NTHREADS=10;
+ static int NSECONDS=10;
+ static volatile long val=1;
+ static boolean passed = true;
+
+
+ public void testMain() {
+ Worker wks[] = new Worker[NTHREADS];
+ for (int i=0;i<NTHREADS;i++) {
+ wks[i]=new Worker();
+ wks[i].start();
+ }
+ try {
+ for (int i=0;i<NTHREADS;i++) {
+ wks[i].join();
+ }
+ } catch (Exception e) {
+ passed = false;
+ }
+ assertTrue(passed);
+/* if (failed) {
+ System.out.println("FAILED");
+ } else {
+ System.out.println("PASSED");
+ }
+*/
+ }
+
+ static class Worker extends Thread{
+ public void run() {
+ long endTime = System.currentTimeMillis() + NSECONDS*1000L;
+ while (System.currentTimeMillis()<endTime && passed) {
+ for (int i=0;i<10000;i++) {
+ long v = val;
+ val = -v;
+ if (v!=1 && v!=-1) {
+ System.out.println("v="+v);
+ passed = false;
+ break;
+ }
+ }
+ }
+ }
+ }
+}
Added: harmony/enhanced/drlvm/trunk/src/test/regression/H2092/run.test.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/src/test/regression/H2092/run.test.xml?view=auto&rev=548324
==============================================================================
--- harmony/enhanced/drlvm/trunk/src/test/regression/H2092/run.test.xml (added)
+++ harmony/enhanced/drlvm/trunk/src/test/regression/H2092/run.test.xml Mon Jun 18 04:32:36 2007
@@ -0,0 +1,14 @@
+<project name="RUN HARMONY-2092 Regression Test">
+ <target name="run-test">
+ <run-junit-test
+ test="org.apache.harmony.drlvm.tests.regression.H2092.Test"
+ vmarg="-Xem:jet">
+ </run-junit-test>
+
+ <run-junit-test
+ test="org.apache.harmony.drlvm.tests.regression.H2092.Test"
+ vmarg="-Xem:opt">
+ </run-junit-test>
+ </target>
+</project>
+