* valid_refanyval.il: New test for the refanyval opcode.
* invalid_refanyval_null_stack_top.il: Same.
* invalid_refanyval_invalid_stack_top.il: Same.
svn path=/trunk/mono/; revision=96797
+2008-02-27 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * valid_refanyval.il: New test for the refanyval opcode.
+
+ * invalid_refanyval_null_stack_top.il: Same.
+
+ * invalid_refanyval_invalid_stack_top.il: Same.
+
2008-02-27 Rodrigo Kumpera <rkumpera@novell.com>
* valid_arglist.il: New test for the arglist opcode.
--- /dev/null
+//
+// vararg.il: Tests for varargs and refany instructions
+//
+
+.assembly extern mscorlib {
+}
+
+.assembly extern TestDriver {
+}
+
+.assembly 'refanyval' {
+}
+
+.module 'refanyval.exe'
+
+.class public auto ansi Tests extends [mscorlib]System.Object {
+ .method public static vararg int32 varargtest_refany (int32 last) cil managed {
+ .maxstack 8
+ .locals init (valuetype [mscorlib]System.ArgIterator it)
+
+ ldloca.s it
+ arglist
+ call instance void [mscorlib]System.ArgIterator::.ctor (valuetype [mscorlib]System.RuntimeArgumentHandle)
+
+ ldc.i4.0
+
+ refanyval int32
+ ldind.i4
+
+ ret
+ }
+
+ .method public static int32 Main () cil managed {
+ .maxstack 16
+ .entrypoint
+
+ ldc.i4 1
+ ldc.i4 0
+ call vararg int32 Tests::varargtest_refany (int32, ..., int32)
+
+
+ ret
+
+ }
+}
--- /dev/null
+//
+// vararg.il: Tests for varargs and refany instructions
+//
+
+.assembly extern mscorlib {
+}
+
+.assembly extern TestDriver {
+}
+
+.assembly 'refanyval' {
+}
+
+.module 'refanyval.exe'
+
+.class public auto ansi Tests extends [mscorlib]System.Object {
+ .method public static vararg int32 varargtest_refany (int32 last) cil managed {
+ .maxstack 8
+ .locals init (valuetype [mscorlib]System.ArgIterator it)
+
+ ldloca.s it
+ arglist
+ call instance void [mscorlib]System.ArgIterator::.ctor (valuetype [mscorlib]System.RuntimeArgumentHandle)
+
+ ldc.i4.0
+
+ refanyval int32
+ ldind.i4
+
+ ret
+ }
+
+ .method public static int32 Main () cil managed {
+ .maxstack 16
+ .entrypoint
+
+ ldc.i4 1
+ ldc.i4 0
+ call vararg int32 Tests::varargtest_refany (int32, ..., int32)
+
+
+ ret
+
+ }
+}
--- /dev/null
+//
+// vararg.il: Tests for varargs and refany instructions
+//
+
+.assembly extern mscorlib {
+}
+
+.assembly extern TestDriver {
+}
+
+.assembly 'refanyval' {
+}
+
+.module 'refanyval.exe'
+
+.class public auto ansi Tests extends [mscorlib]System.Object {
+ .method public static vararg int32 varargtest_refany (int32 last) cil managed {
+ .maxstack 8
+ .locals init (valuetype [mscorlib]System.ArgIterator it)
+
+ ldloca.s it
+ arglist
+ call instance void [mscorlib]System.ArgIterator::.ctor (valuetype [mscorlib]System.RuntimeArgumentHandle)
+
+ ldloca.s it
+ call instance typedref [mscorlib]System.ArgIterator::GetNextArg ()
+ refanyval int32
+ ldind.i4
+
+ ret
+ }
+
+ .method public static int32 Main () cil managed {
+ .maxstack 16
+ .entrypoint
+
+ ldc.i4 1
+ ldc.i4 0
+ call vararg int32 Tests::varargtest_refany (int32, ..., int32)
+
+
+ ret
+
+ }
+}