2004-02-02 Zoltan Varga <vargaz@freemail.hu>
authorZoltan Varga <vargaz@gmail.com>
Mon, 2 Feb 2004 14:00:09 +0000 (14:00 -0000)
committerZoltan Varga <vargaz@gmail.com>
Mon, 2 Feb 2004 14:00:09 +0000 (14:00 -0000)
* pinvoke.cs libtest.c: Add test for Sparc V8 split register/stack double
parameter passing.

svn path=/trunk/mono/; revision=22696

mono/tests/ChangeLog
mono/tests/libtest.c
mono/tests/pinvoke.cs

index 6e94459cef74caa94294bc3f0d63789bf670714f..006087535783a9e71a8b72930de09c1159ec1c73 100644 (file)
@@ -1,3 +1,12 @@
+2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
+
+       * pinvoke.cs libtest.c: Add test for Sparc V8 split register/stack double
+       parameter passing.
+
+2004-01-31  Zoltan Varga  <vargaz@freemail.hu>
+
+       * setenv.cs: Make this run on platforms without setenv.
+
 2004-01-30  Zoltan Varga  <vargaz@freemail.hu>
 
        * Makefile.am: Set SHELL to bash, since some commands require it.
index 2247103a06d07d70eaee220d20ba0b71281c3eb7..6db8fdd65b9acd1be54a8f58f8e437d8221f78ba 100644 (file)
@@ -145,6 +145,12 @@ mono_test_many_double_arguments (double a, double b, double c, double d, double
        return a + b + c + d + e + f + g + h + i + j;
 }
 
+double
+mono_test_split_double_arguments (double a, double b, float c, double d, double e)
+{
+       return a + b + c + d + e;
+}
+
 int
 mono_test_puts_static (char *s)
 {
index b929318a3e4d4e448deacd5d382afb98043e96e3..9421377621d4a16fb706011c0d78626dbab50366 100755 (executable)
@@ -21,6 +21,8 @@ public class Test {
        [DllImport ("libtest", EntryPoint="mono_test_many_double_arguments")]
        public static extern double mono_test_many_double_arguments (double a, double b, double c, double d, double e,
                                                                double f, double g, double h, double i, double j);
+       [DllImport ("libtest", EntryPoint="mono_test_split_double_arguments")]
+       public static extern double mono_test_split_double_arguments (double a, double b, float c, double d, double e);
 
        public static int Main () {
                try {
@@ -43,6 +45,10 @@ public class Test {
                        return 6;
                if (mono_test_many_double_arguments (1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0) != 55.0)
                        return 7;
+
+               /* Test Sparc V8 split register/stack double parameter passing */
+               if (mono_test_split_double_arguments (1.0, 2.0, 3.0f, 4.0, 5.0) != 15.0)
+                       return 8;
                
                return 0;
        }