Merge pull request #1949 from lewurm/fixtype
[mono.git] / mono / mini / iltests.il.in
index 2ed020c9ce00b9cb53f4032c0b83dece0b4b173c..bf1153ccae0116cded372ee13f96abf62b059302 100644 (file)
@@ -1626,7 +1626,7 @@ COND:   ldloc.0
     .method private static  hidebysig
            default void regress_80622_inner (object x)  cil managed
     {
-               .locals (unsigned int8 i)
+               .locals init (unsigned int8 i)
         // Method begins at RVA 0x2050
         // Code size 14 (0xe)
         .maxstack 8
@@ -1861,7 +1861,7 @@ HAS_VALUE:        ldc.i4.1
 
        .method public static int32 test_0_long_shift_regalloc () cil managed
        {
-               .locals (unsigned int32 'cilsimp.28', unsigned int64 'cilsimp.27', int32 'cilsimp.26')
+               .locals init (unsigned int32 'cilsimp.28', unsigned int64 'cilsimp.27', int32 'cilsimp.26')
 
                .maxstack 4
 
@@ -2037,6 +2037,8 @@ HAS_VALUE:        ldc.i4.1
        // Code size 34 (0x22)
        .maxstack 17
        IL_0000:  ldarg.0 
+                         ldc.i4.1
+                         add
        IL_0001:  ldarg.1 
        IL_0002:  ldarg.2 
        IL_0003:  ldarg.3 
@@ -2051,7 +2053,11 @@ HAS_VALUE:       ldc.i4.1
        IL_0014:  ldarg.s 12
        IL_0016:  ldarg.s 13
        IL_0018:  ldarg.s 14
+                         ldc.i4.1
+                         add
        IL_001a:  ldarg.s 15
+                         ldc.i4.1
+                         add
                  tail.
        IL_001c:  call int32 class Tests::manyargs_callee(int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32)
        IL_0021:  ret 
@@ -2059,7 +2065,7 @@ HAS_VALUE:        ldc.i4.1
 
     // method line 4
     .method public static  hidebysig 
-           default int32 test_0_many_args_tail_call ()  cil managed 
+           default int32 test_139_many_args_tail_call ()  cil managed
     {
                // Some platforms might not be able to AOT tail calls
                .custom instance void class [TestDriver]CategoryAttribute::'.ctor'(string) =  (01 00 08 21 46 55 4C 4C 41 4F 54 00 00 ) // ...!FULLAOT..
@@ -2084,13 +2090,7 @@ HAS_VALUE:       ldc.i4.1
        IL_0014:  ldc.i4.s 0x0f
        IL_0016:  ldc.i4.s 0x10
        IL_0018:  call int32 class Tests::manyargs_tail_caller(int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32)
-       IL_001d:  ldc.i4 136
-       IL_0022:  beq IL_0029
-
-       IL_0027:  ldc.i4.1 
        IL_0028:  ret 
-       IL_0029:  ldc.i4.0 
-       IL_002a:  ret 
     } // end of method main::Main
 
        .class nested private auto ansi beforefieldinit R1
@@ -2295,7 +2295,7 @@ OK_2:
 
        .method public static int32 test_0_regalloc_regress_497271 () cil managed
        {
-               .locals (int32 var)
+               .locals init (int32 var)
 
                ldc.i4  4
                stsfld  int32 Tests::shift1
@@ -2699,4 +2699,102 @@ END:
                add
                ret
        }
+
+  .method public static default int32 no_initlocals_inner () cil managed
+  {
+    .locals (
+       int32 V_0,
+       float32 V_1,
+       float64 V_2,
+       valuetype Tests/TailCallStruct V_3)
+       ldloc V_0
+       ret
+  }
+
+  .method public static default int32 test_0_no_initlocals () cil managed
+  {
+       call int32 Tests::no_initlocals_inner()
+       pop
+          ldc.i4.0
+       ret
+  }
+
+  .method public hidebysig static int32  test_5_r4_fadd_mixed() cil managed
+  {
+    // Code size       17 (0x11)
+    .maxstack  2
+    .locals init (float32 V_0,
+             float64 V_1)
+    IL_0000:  ldc.r4     3
+    IL_0005:  stloc.0
+    IL_0006:  ldc.r8     2
+    IL_000b:  stloc.1
+    IL_000c:  ldloc.0
+    IL_000d:  ldloc.1
+    IL_000e:  add
+    IL_000f:  conv.i4
+    IL_0010:  ret
+  }
+
+ .method public hidebysig static int32  test_0_fcmp_eq_r4_mixed() cil managed
+  {
+    // Code size       32 (0x20)
+    .maxstack  2
+    .locals init (float32 V_0,
+             float64 V_1)
+    IL_0000:  ldc.r4     1
+    IL_0005:  stloc.0
+    IL_0006:  ldc.r8     1
+    IL_000f:  stloc.1
+    IL_0010:  ldloc.0
+    IL_0012:  ldloc.1
+    IL_0013:  bne.un     IL_001e
+
+    IL_0018:  ldc.i4.0
+    IL_0019:  br         IL_001f
+
+    IL_001e:  ldc.i4.1
+    IL_001f:  ret
+  } // end of method Tests::test_0_fcmp_eq_r4_mixed
+
+  .method public hidebysig static int32  test_0_fceq_r4_mixed() cil managed
+  {
+    // Code size       31 (0x1f)
+    .maxstack  2
+    .locals init (float32 V_0,
+             float64 V_1,
+             bool V_2)
+    IL_0000:  ldc.r4     1
+    IL_0005:  stloc.0
+    IL_0006:  ldc.r8     1
+    IL_000b:  stloc.1
+    IL_000c:  ldloc.0
+    IL_000d:  ldloc.1
+    IL_000e:  ceq
+    IL_0010:  stloc.2
+    IL_0011:  ldloc.2
+    IL_0012:  brfalse    IL_001d
+
+    IL_0017:  ldc.i4.0
+    IL_0018:  br         IL_001e
+
+    IL_001d:  ldc.i4.1
+    IL_001e:  ret
+  } // end of method Tests::test_0_fceq_r4
+
+  .method public static int32 test_0_switch_loop () cil managed
+  {
+       .maxstack 16
+       .locals init (valuetype Tests/TailCallStruct V_0, int32 V_1)
+       ldc.i4.0
+       ldloc.0
+       ldloc.1
+       brtrue L_1
+       L_0:
+       ldc.i4.4
+       switch (L_0)
+       L_1:
+       pop
+       ret
+  }
 }