[interp] clear locals storage also on pointer type
[mono.git] / mono / mini / iltests.il
index 35f1f8db28f67983d2b991bcb72a6c6ab4f2c255..ddd09350921a0b1b0f6e093e58c27d16492b3b10 100644 (file)
        
        // this only happens with the managed pointer, not an unmanaged one.
        .method static public int32 test_0_foo () il managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
        
                .locals init (
                        int32&  buf
        }
 
        .method static public int32 test_0_localloc () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .locals init (native int, native int, native int, native int, int32)
 
                ldc.i4 6
@@ -640,6 +642,7 @@ COND:   ldloc.0
        }
 
        .method static public int32 test_11_switch_with_nonempty_stack () il managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 16
 
                ldc.i4.5
@@ -668,6 +671,27 @@ COND:   ldloc.0
                ret
     }
 
+    .method public static int32 test_5_endfinally_llvm_linking () il managed {
+               .maxstack 16
+
+        .try {
+          leave IL_0
+        }
+        finally  {
+          ldc.i4.0
+                 dup
+                 brtrue L1
+                 pop
+                 br L2
+               L1:
+                 pop
+               L2:
+          endfinally
+        }
+        IL_0:  ldc.i4.5
+               ret
+    }
+
        .method public static int32 test_0_conv_ovf_i8_neg () il managed {
                .maxstack 16
 
@@ -731,6 +755,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_0_conv_ovf_u_un () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 16
 
                ldc.i4 1234
@@ -833,6 +858,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_0_lconv_ovf_u_un () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 16
 
                ldc.i4 1234
@@ -865,6 +891,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_0_lconv_to_ovf_u8_un () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 16
 
                ldc.i4 1234
@@ -881,6 +908,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_2_lconv_to_ovf_i4_un () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 16
                .locals init (int32 res)
 
@@ -1103,6 +1131,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_7_conv_ovf_u8_un () {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
        .maxstack  2
         .locals    init (unsigned int64)
 
@@ -1189,6 +1218,7 @@ COND:   ldloc.0
    } // end of class xxx
 
        .method public static int32 test_0_newobj_vtype () {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 6
                .locals init (
                        valuetype Tests/xxx V_0
@@ -1226,7 +1256,8 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_1_filters () {
-               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 08 21 42 49 54 43 4F 44 45 00 00 )          // ...!BITCODE..
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
+               // .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 08 21 42 49 54 43 4F 44 45 00 00 )          // ...!BITCODE..
                .maxstack 16
                .locals init (
                        int32 res
@@ -1274,6 +1305,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_5_cpobj () {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 8
                .locals init (  
                                valuetype Tests/TheStruct v_0, 
@@ -1330,6 +1362,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_1_cpobj_reference () {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 8
                .locals init (  
                                object v_0, 
@@ -1350,6 +1383,7 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_1_initobj_reference () {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 8
                .locals init (  
                                object v_0
@@ -1789,6 +1823,7 @@ HAS_VALUE:        ldc.i4.1
 
        //Bug 372410
        .method static public int32 test_0_array_address_type_check () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .maxstack 16
                .locals init (object[] V_0,
                                          object[,] V_1)
@@ -2464,6 +2499,7 @@ OK_2:
 
        .method public static int32 test_2_leave_multiple_blocks_from_end ()
        {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .locals init (int32 V_0)
 
                .try {
@@ -2494,6 +2530,7 @@ END:
 
        .method public static int32 test_3_leave_multiple_blocks_from_hole ()
        {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .locals init (int32 V_0)
 
                .try {
@@ -2578,6 +2615,7 @@ END:
 
        .method public static default int32 test_0_wrap_non_exception_throws () cil managed
        {
+         .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
          .try {
                    newobj instance void class [mscorlib]System.Object::'.ctor'()
                        throw
@@ -2591,6 +2629,7 @@ END:
     }
 
        .method public static default int32 test_0_typespec_modopt () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                ldtoken class Tests modopt (Tests)
                pop
                ldc.i4.0
@@ -2606,6 +2645,7 @@ END:
        }
 
        .method public static default int32 test_1_sizeof_gshared () cil managed {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
            call   int32 Tests::SizeOfT<int8>()
                ldc.i4.1
                ceq
@@ -2667,6 +2707,7 @@ END:
        .method public static
                        default int32 test_0_llvm_regress_171 () cil managed
        {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                .locals init (
                        int32 i
                )
@@ -2689,6 +2730,7 @@ END:
        .method public static
                        default int32 test_4_ldfld_stfld_static () cil managed
        {
+               .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 0C 21 49 4E 54 45 52 50 52 45 54 45 52 00 00 )   // ...!INTERPRETER.
                ldnull
                ldc.i4 2
                stfld int32 Tests::static_a