Log all sdb log messages to the log file instead of stdout.
[mono.git] / mono / mini / iltests.il.in
index 245d1deedf43b2ce65d4ba70ea581920eadad16d..565ab748f56de5228c4bc453865f9f7dd8400574 100644 (file)
@@ -1,4 +1,8 @@
-.assembly iltests {}
+.assembly iltests {
+  .custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::'.ctor'() =  (
+               01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78   // ....T..WrapNonEx
+               63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01       ) // ceptionThrows.
+}
 .assembly extern TestDriver {}
 .assembly extern mscorlib {}
 
@@ -585,6 +589,9 @@ COND:   ldloc.0
        }
 
        .method static public int32 test_24_tail_calls2 () il 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..
+
                .maxstack 16
                .locals init (
                        int32 i,
@@ -602,6 +609,9 @@ COND:   ldloc.0
        }
 
        .method public static int32 test_5_jmp () 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..
+
                ldc.i4.1
                ldc.i4.2
                call int32 Tests::jmp2 (int32, int32)
@@ -957,7 +967,7 @@ COND:   ldloc.0
                ret
        }
 
-#if !defined(__ppc__) && !defined(__powerpc__) && !defined(__arm__) && !defined(__sparc__)
+#if !defined(__ppc__) && !defined(__powerpc__) && !defined(__arm__) && !defined(__sparc__) && !defined(__mips__)
        // PPC handles overflow by clipping, but this test assumes
        // no overflow handling.  According to ECMA the result of
        // float->int conversion is undefined if overflow occurs, so
@@ -2063,6 +2073,9 @@ HAS_VALUE:        ldc.i4.1
     .method public static  hidebysig 
            default int32 test_0_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..
+
         // Method begins at RVA 0x2154
        // Code size 43 (0x2b)
        .maxstack 17
@@ -2528,4 +2541,85 @@ END:
                ldloc.0
                ret
        }
+
+       .class nested private auto ansi sealed beforefieldinit Pair`2<TKey,TValue>
+                  extends [mscorlib]System.ValueType
+       {
+               .field  public  !0 key
+       .field  public  !1 'value'
+       }
+
+    .method private static hidebysig 
+           default bool ContentEquals<TKey,TValue> (valuetype Tests/Pair`2<!!TKey, !!TValue> v)  cil managed 
+    {
+       .maxstack 8
+       IL_0000:  ldarga.s 0 
+       IL_0006:  ldnull 
+                         constrained. valuetype Tests/Pair`2<!!0,!!1>
+       IL_0007:  callvirt instance bool class [mscorlib]System.Object::Equals(object)
+                         ret
+    }
+
+    .method public static hidebysig default int32 test_0_constrained_gshared_595863 () cil managed
+    {
+               .locals init (
+               valuetype Tests/Pair`2<string, string>  V_0,
+               valuetype Tests/Pair`2<string, string>  V_1)
+       IL_0000:  ldloca.s 0
+       IL_0002:  initobj valuetype Tests/Pair`2<string,string>
+       IL_0008:  ldloc.0 
+       IL_0009:  stloc.1 
+       IL_000a:  ldloca.s 1
+       IL_000c:  ldstr "A"
+       IL_0011:  stfld !0 valuetype Tests/Pair`2<string,string>::key
+       IL_0016:  ldloca.s 1
+       IL_0018:  ldstr "B"
+       IL_001d:  stfld !1 valuetype Tests/Pair`2<string,string>::'value'
+       IL_0022:  ldloc.1 
+       IL_0023:  stloc.0 
+       IL_0024:  ldloc.0 
+       IL_0025:  call bool class Tests::ContentEquals<string, string> (valuetype Tests/Pair`2<!!0,!!1>)
+                         brfalse SUCCESS
+                         ldc.i4.1
+                         ret
+       SUCCESS:
+                         ldc.i4.0
+                         ret
+    }
+
+       .method public static default int32 test_0_wrap_non_exception_throws () cil managed
+       {
+         .try {
+                   newobj instance void class [mscorlib]System.Object::'.ctor'()
+                       throw
+                 leave IL_0
+         } catch class [mscorlib]System.Runtime.CompilerServices.RuntimeWrappedException {
+                 leave IL_0
+               }
+               IL_0:
+               ldc.i4.0
+               ret
+    }
+
+       .method public static default int32 test_0_typespec_modopt () cil managed {
+               ldtoken class Tests modopt (Tests)
+               pop
+               ldc.i4.0
+               ret
+       }
+
+       .method public hidebysig static int32 SizeOfT<T>() cil managed
+       {
+               .maxstack  8
+    
+               sizeof !!0
+       ret
+       }
+
+       .method public static default int32 test_1_sizeof_gshared () cil managed {
+           call   int32 Tests::SizeOfT<int8>()
+               ldc.i4.1
+               ceq
+               ret
+       }
 }