3 int mono_test_many_int_arguments (int a, int b, int c, int d, int e,
4 int f, int g, int h, int i, int j);
5 short mono_test_many_short_arguments (short a, short b, short c, short d, short e,
6 short f, short g, short h, short i, short j);
7 char mono_test_many_char_arguments (char a, char b, char c, char d, char e,
8 char f, char g, char h, char i, char j);
11 mono_test_many_int_arguments (int a, int b, int c, int d, int e, int f, int g, int h, int i, int j)
13 return a + b + c + d + e + f + g + h + i + j;
17 mono_test_many_short_arguments (short a, short b, short c, short d, short e, short f, short g, short h, short i, short j)
19 return a + b + c + d + e + f + g + h + i + j;
23 mono_test_many_byte_arguments (char a, char b, char c, char d, char e, char f, char g, char h, char i, char j)
25 return a + b + c + d + e + f + g + h + i + j;
29 mono_test_puts_static (char *s)
31 printf ("TEST %s\n", s);
35 typedef int (*SimpleDelegate3) (int a, int b);
38 mono_invoke_delegate (SimpleDelegate3 delegate)
42 printf ("start invoke %p\n", delegate);
44 res = delegate (2, 3);
46 printf ("end invoke\n");
52 mono_test_marshal_char (short a1)
61 mono_test_marshal_array (int *a1)
65 for (i = 0; i < 50; i++)
79 mono_test_marshal_struct (simplestruct ss)
81 if (ss.a == 0 && ss.b == 1 && ss.c == 0 &&
82 !strcmp (ss.d, "TEST"))
89 typedef int (*SimpleDelegate) (int a);
92 mono_test_marshal_delegate (SimpleDelegate delegate)
97 typedef int (*SimpleDelegate2) (simplestruct ss);
100 mono_test_marshal_delegate2 (SimpleDelegate2 delegate)
109 return delegate (ss);