2 .custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::'.ctor'() = (
3 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78 // ....T..WrapNonEx
4 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01 ) // ceptionThrows.
6 .assembly extern TestDriver {}
7 .assembly extern mscorlib {}
9 .class public auto ansi sealed beforefieldinit Tests {
11 .method static public int32 Main(string[] args) il managed {
15 call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle)
17 call int32 [TestDriver]TestDriver::RunTests(class [mscorlib]System.Type, string[])
21 // make sure the register allocator works when the return value of
23 .method static public int32 test_0_div_regalloc () il managed {
37 .method static public int32 test_1_ceq_to_i4 () il managed {
51 .method static public int32 test_3_shl_regvars () il managed {
98 .method static public int32 test_1_fceq_to_i4 () il managed {
118 // This should be manually checked. Basically under -O=linears,
119 // you should not see tons of register spilling.
121 .method static public int32 test_1_bytedreg_free () il managed {
157 // This should be manually checked. Basically under -O=linears,
158 // you should not see tons of register spilling.
160 .method static public int32 test_0_bytesreg1_free () il managed {
199 .method static public int32 test_1_shift_regvar () il managed {
220 // this only happens with the managed pointer, not an unmanaged one.
221 .method static public int32 test_0_foo () il managed {
222 .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.
239 .method static public int32 test_0_localloc () cil managed {
240 .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.
241 .locals init (native int, native int, native int, native int, int32)
266 // Check zero initialized
315 // Try allocations bigger than one page
341 .method private static void do_localloc () cil managed {
346 IL_0001: ldc.i4 131072
353 // Check that localloc cannot be inlined
354 .method static public int32 test_0_localloc_inline () cil managed {
364 START: call void class Tests::do_localloc()
377 .method static public int32 test_3_copy_used_bug () il managed {
403 // demonstrate that the copy_used_var is not a fix for the above bug
404 .method static public int32 test_3_copy_used_indir_bug () il managed {
431 .method static public void do_nothing (int32 a) il managed {
435 // demonstrate the block_split failure: needs -O=inline
436 // mini -O=inline --compile Tests:test_0_split_block_bug iltests.exe
437 .method static public int32 test_0_split_block_bug () il managed {
447 call void class Tests::do_nothing (int32)
455 .method public void inline_do_nothing () il managed {
458 .method static public int32 test_1_checkthis_inlining () il managed {
460 call instance void class Tests::inline_do_nothing ()
465 .class nested private auto ansi sealed beforefieldinit TailCallStruct
466 extends [mscorlib]System.ValueType {
467 .field public int32 a
468 .field public int32 b
471 .method static valuetype Tests/TailCallStruct tail1 (valuetype Tests/TailCallStruct arg) {
474 ldfld int32 Tests/TailCallStruct::a
477 stfld int32 Tests/TailCallStruct::a
480 ldfld int32 Tests/TailCallStruct::a
483 stfld int32 Tests/TailCallStruct::a
488 .method static valuetype Tests/TailCallStruct tail2 (valuetype Tests/TailCallStruct arg) {
491 call valuetype Tests/TailCallStruct Tests::tail1 (valuetype Tests/TailCallStruct)
495 .class nested private auto ansi sealed beforefieldinit TailCallStructBig
496 extends [mscorlib]System.ValueType {
497 .field public int32 a
498 .field public int32 b
499 .field public int32 c
500 .field public int32 d
501 .field public int32 e
504 .method static valuetype Tests/TailCallStructBig tail_vret_by_addr_inner (valuetype Tests/TailCallStructBig arg) {
507 ldfld int32 Tests/TailCallStructBig::a
510 stfld int32 Tests/TailCallStructBig::a
515 .method static valuetype Tests/TailCallStructBig tail_vret_by_addr (valuetype Tests/TailCallStructBig arg) {
518 call valuetype Tests/TailCallStructBig Tests::tail_vret_by_addr_inner (valuetype Tests/TailCallStructBig)
522 .method static public int32 test_3_tail_call_vret_by_addr () il managed {
525 valuetype Tests/TailCallStructBig arg2
530 stfld int32 Tests/TailCallStructBig::a
532 call valuetype Tests/TailCallStructBig Tests::tail_vret_by_addr (valuetype Tests/TailCallStructBig)
536 ldfld int32 Tests/TailCallStructBig::a
540 .method static public int32 test_9_tail_call_vret_by_val () il managed {
543 valuetype Tests/TailCallStruct arg
547 stfld int32 Tests/TailCallStruct::a
550 stfld int32 Tests/TailCallStruct::b
552 call valuetype Tests/TailCallStruct Tests::tail2 (valuetype Tests/TailCallStruct)
556 ldfld int32 Tests/TailCallStruct::a
558 ldfld int32 Tests/TailCallStruct::b
563 .method static public int32 tail3 (int32 i, int32 j) il managed {
570 .method static public int32 tail4 (int32 i, int32 j) il managed {
575 // Test arg0 allocated to a register
585 // Test switched up argument variables as the actual arguments
589 call int32 Tests::tail3 (int32, int32)
593 .method static public int32 test_24_tail_calls2 () il managed {
594 // Some platforms might not be able to AOT tail calls
595 .custom instance void class [TestDriver]CategoryAttribute::'.ctor'(string) = (01 00 08 21 46 55 4C 4C 41 4F 54 00 00 ) // ...!FULLAOT..
609 call int32 Tests::tail4 (int32, int32)
613 .method public static int32 test_5_jmp () cil managed {
614 // Some platforms might not be able to AOT tail calls
615 .custom instance void class [TestDriver]CategoryAttribute::'.ctor'(string) = (01 00 08 21 46 55 4C 4C 41 4F 54 00 00 ) // ...!FULLAOT..
619 call int32 Tests::jmp2 (int32, int32)
623 .method public static int32 jmp2 (int32, int32) cil managed {
632 jmp int32 Tests::jmp3 (int32, int32)
637 .method public static int32 jmp3 (int32 i, int32 j) cil managed {
644 .method static public int32 test_11_switch_with_nonempty_stack () il managed {
645 .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.
660 .method public static int32 test_5_endfinally_with_nonempty_stack () il managed {
674 .method public static int32 test_5_endfinally_llvm_linking () il managed {
695 .method public static int32 test_0_conv_ovf_i8_neg () il managed {
710 .method public static int32 test_1234_conv_u4 () cil managed {
719 .method public static int32 test_0_conv_ovf_i_un () cil managed {
738 sizeof [mscorlib]System.IntPtr
745 } catch [mscorlib]System.OverflowException {
757 .method public static int32 test_0_conv_ovf_u_un () cil managed {
758 .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.
773 .method public static int32 test_0_conv_ovf_i () cil managed {
788 .method public static int32 test_0_conv_ovf_u () cil managed {
803 .method public static int32 test_1234_conv_ovf_i8_un () cil managed {
812 .method public static int32 test_0_lconv_ovf_i () cil managed {
828 .method public static int32 test_0_lconv_ovf_u () cil managed {
844 .method public static int32 test_0_lconv_ovf_i_un () cil managed {
860 .method public static int32 test_0_lconv_ovf_u_un () cil managed {
861 .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.
877 .method public static int32 test_0_lconv_to_ovf_i8 () cil managed {
893 .method public static int32 test_0_lconv_to_ovf_u8_un () cil managed {
894 .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.
910 .method public static int32 test_2_lconv_to_ovf_i4_un () cil managed {
911 .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.
913 .locals init (int32 res)
930 } catch [mscorlib]System.OverflowException {
938 ldc.i8 0xffffffff80000000
944 } catch [mscorlib]System.OverflowException {
954 .method public static int32 test_1_lconv_to_ovf_i_un () cil managed {
956 .locals init (int32 res)
968 .method public static int32 test_32_lconv_to_u8 () cil managed
979 .method public static int32 test_32_lconv_to_i8 () cil managed
990 .method public static int32 test_15_lconv_to_u () cil managed
998 .method public static int32 test_1234_fconv_u () cil managed {
1007 .method public static int32 test_0_get_type_from_handle_on_bblock_boundary () cil managed
1014 ldtoken [mscorlib]System.String
1017 ldtoken [mscorlib]System.Object
1019 call class [mscorlib]'System.Type' class [mscorlib]'System.Type'::'GetTypeFromHandle'(valuetype [mscorlib]'System.RuntimeTypeHandle')
1020 callvirt instance string class [mscorlib]System.Type::get_FullName ()
1021 ldstr "System.String"
1022 callvirt instance bool class [mscorlib]System.Object::Equals(object)
1028 .method public static int32 test_0_bug59580 ()
1030 ldc.r4 float32(0x7FC00000)
1031 ldc.r4 float32(0x7FC00000)
1042 .method public static int32 test_1_bug60056 () {
1043 .locals init (int32 m5)
1061 .method public static int32 test_1_conv_u8_cfold () {
1065 ldc.i8 0x00000000ffffffff
1071 .method public static int32 test_1_array_type_mismatch_ldelema () {
1072 .locals init (int32 r)
1088 } catch [mscorlib]System.ArrayTypeMismatchException {
1099 .method public static int32 test_1_conv_ovf_i8_with_i4 () {
1108 .method public static int32 test_0_initlocals_float_ptr () {
1112 float32& pinned V_1,
1115 newarr [mscorlib]System.Single
1123 ldelema [mscorlib]System.Single
1133 .method public static int32 test_7_conv_ovf_u8_un () {
1134 .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.
1136 .locals init (unsigned int64)
1146 .method public static int32 test_7_conv_ovf_u4_un () {
1148 .locals init (unsigned int32)
1158 .method public static int32 test_1_bug_74591 () {
1160 .locals init (int32)
1173 .class nested public auto ansi Integer
1174 extends [mscorlib]System.Object {
1176 .field public bool n
1178 .method public hidebysig specialname rtspecialname
1179 instance default void .ctor (unsigned int64 i, bool n) cil managed
1183 call instance void class [mscorlib]System.Object::.ctor()
1186 stfld bool Tests/Integer::n
1191 .method public static int32 test_1_bug_74726 () {
1200 newobj instance void class Tests/Integer::.ctor(unsigned int64, bool)
1201 ldfld bool Tests/Integer::n
1207 .class nested private auto ansi sealed xxx
1208 extends [mscorlib]System.ValueType
1210 .field public object a
1212 .method public hidebysig specialname rtspecialname
1213 instance default void .ctor () cil managed
1218 } // end of class xxx
1220 .method public static int32 test_0_newobj_vtype () {
1221 .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.
1224 valuetype Tests/xxx V_0
1227 newobj instance void valuetype Tests/xxx::.ctor ()
1230 ldfld object Tests/xxx::a
1239 .method public static int32 test_0_newobj_vtype_primitive () {
1246 newobj instance void native int::'.ctor'(int32)
1258 .method public static int32 test_1_filters () {
1259 .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.
1260 // .custom instance void [TestDriver]CategoryAttribute::.ctor(string) = ( 01 00 08 21 42 49 54 43 4F 44 45 00 00 ) // ...!BITCODE..
1268 ldstr "OnErrorSub test Exception"
1269 newobj instance void class [mscorlib]System.Exception::.ctor(string)
1279 // Should not be called
1301 .class nested private auto ansi sealed beforefieldinit TheStruct
1302 extends [mscorlib]System.ValueType {
1303 .field public int32 a
1304 .field public int32 b
1307 .method public static int32 test_5_cpobj () {
1308 .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.
1311 valuetype Tests/TheStruct v_0,
1312 valuetype Tests/TheStruct v_1
1317 stfld int32 Tests/TheStruct::a
1321 stfld int32 Tests/TheStruct::b
1325 cpobj Tests/TheStruct
1328 ldfld int32 Tests/TheStruct::a
1330 ldfld int32 Tests/TheStruct::b
1336 .method public static int32 test_5_ldobj_stloc_optimization () {
1339 valuetype Tests/TheStruct v_0,
1340 valuetype Tests/TheStruct v_1
1345 stfld int32 Tests/TheStruct::a
1349 stfld int32 Tests/TheStruct::b
1352 ldobj valuetype Tests/TheStruct
1356 ldfld int32 Tests/TheStruct::a
1358 ldfld int32 Tests/TheStruct::b
1364 .method public static int32 test_1_cpobj_reference () {
1365 .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.
1372 newobj instance void object::.ctor()
1385 .method public static int32 test_1_initobj_reference () {
1386 .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.
1392 newobj instance void object::.ctor()
1404 .method public static int32 test_1_ldobj_reference () {
1410 newobj instance void object::.ctor()
1420 .method public static int32 test_5_vtype_on_bb_boundary () {
1423 valuetype Tests/TheStruct v_0,
1424 valuetype Tests/TheStruct v_1
1429 stfld int32 Tests/TheStruct::a
1433 stfld int32 Tests/TheStruct::b
1440 ldfld int32 Tests/TheStruct::a
1442 ldfld int32 Tests/TheStruct::b
1447 .method public static int32 test_5_different_in_stacks () cil managed {
1471 .method public static int32 test_3_larray_get_set () {
1476 newobj instance void int32[0...]::.ctor(int32)
1481 call instance void int32[0...]::Set(int32, int32)
1485 call instance void int32[0...]::Set(int32, int32)
1489 call instance int32 int32[0...]::Get(int32)
1492 call instance int32 int32[0...]::Get(int32)
1497 .method public static int32 test_0_pop_side_effects () {
1506 catch [mscorlib]System.ArithmeticException {
1518 .method public static void regalloc_regress_78314_helper (object o) cil managed
1523 .method public static int32 test_1_regalloc_regress_78314 () cil managed
1525 // Code size 68 (0x44)
1527 .locals init (int32 V_0, bool V_1)
1530 IL_0002: br.s IL_003b
1533 IL_001e: ldc.i4.s 10
1536 IL_0022: ldc.i4.s 10
1540 IL_0028: box [mscorlib]System.Boolean
1541 IL_0032: call void Tests::regalloc_regress_78314_helper(object)
1548 IL_003f: blt.s IL_0004
1557 .method public static void try_block_end_remove_if_useless () cil managed {
1575 .try T_START to T1_END finally handler F1_START to F1_END
1578 .method public static int32 test_0_try_block_end_remove_if_useless () cil managed {
1579 call void class Tests::try_block_end_remove_if_useless ()
1584 .method private static int32 test_0_regress_78629_switch_next_ins_target () cil managed
1594 // This belongs to basic-float.cs, but its hard to tell mcs/csc to
1595 // generate the non .un version of the opcodes
1596 .method private static hidebysig
1597 default int32 test_4_float_branch_nan () cil managed
1599 // Method begins at RVA 0x27a4
1600 // Code size 74 (0x4a)
1606 IL_0000: ldc.r8 (00 00 00 00 00 00 f8 ff)
1614 IL_0018: bge.s IL_001a
1626 IL_0022: ble.s IL_002e
1637 IL_0036: blt.s IL_0038
1648 IL_0040: bgt.s IL_0042
1659 } // end of method Tests::test_5_float_branch_nan
1661 .method private static hidebysig
1662 default void regress_80622_inner (object x) cil managed
1664 .locals init (unsigned int8 i)
1665 // Method begins at RVA 0x2050
1666 // Code size 14 (0xe)
1669 IL_1001: unbox unsigned int8
1670 IL_1006: ldobj unsigned int8
1671 IL_000b: conv.ovf.i4.un
1677 .method private static hidebysig
1678 default int32 test_0_regress_80622 () cil managed
1682 IL_0005: box unsigned int8
1683 IL_000a: call void class Tests::regress_80622_inner (object)
1688 .method private static default int32 test_0_regresss_80190 () cil managed
1691 .locals init (int32 V_0,
1695 IL_0002: ldloca.s V_0
1706 .class interface nested public auto ansi abstract IFaceWithStaticMethod
1708 .method public static specialname
1709 default void foo () cil managed noinlining
1716 .class nested public auto ansi AClass extends [mscorlib]System.Object implements Tests/IFaceWithStaticMethod
1718 .method public hidebysig specialname rtspecialname
1719 instance default void .ctor () cil managed
1727 // Test that static methods in interfaces are ignored during vtable construction
1728 .method private static default int32 test_0_ifaces_with_static_methods () cil managed
1732 newobj instance void class Tests/AClass::.ctor()
1738 .method private static hidebysig default int32 Foo<T> (!!T n) cil managed {
1749 .method static public int32 test_0_nullable_box_brtrue () cil managed {
1751 .locals init (valuetype [mscorlib]System.Nullable`1<int32> V_0)
1754 call int32 class Tests::Foo<valuetype [mscorlib]System.Nullable`1<int32>> (!!0)
1759 .method static public int32 test_0_ldelema_type_check () cil managed {
1761 .locals init (object[] V_0,
1773 } catch [mscorlib]System.ArrayTypeMismatchException {
1787 } catch [mscorlib]System.ArrayTypeMismatchException {
1799 readonly. ldelema object
1801 } catch [mscorlib]System.ArrayTypeMismatchException {
1825 .method static public int32 test_0_array_address_type_check () cil managed {
1826 .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.
1828 .locals init (object[] V_0,
1833 newobj instance void object[,]::.ctor(int32, int32)
1840 call instance object& object[,]::Address(int32, int32)
1842 } catch [mscorlib]System.ArrayTypeMismatchException {
1849 newobj instance void string[,]::.ctor(int32, int32)
1856 call instance object& object[,]::Address(int32, int32)
1858 } catch [mscorlib]System.ArrayTypeMismatchException {
1865 newobj instance void string[,]::.ctor(int32, int32)
1872 readonly. call instance object& object[,]::Address(int32, int32)
1874 } catch [mscorlib]System.ArrayTypeMismatchException {
1894 .field public static unsigned int64 'ull'
1896 .field public static int32 'shift2'
1898 .method public static int32 test_0_long_shift_regalloc () cil managed
1900 .locals init (unsigned int32 'cilsimp.28', unsigned int64 'cilsimp.27', int32 'cilsimp.26')
1904 ldc.i8 81985529234382576
1905 stsfld unsigned int64 Tests::ull
1907 stsfld int32 Tests::shift2
1909 ldsfld unsigned int64 Tests::ull
1911 ldsfld int32 Tests::shift2
1922 ldc.i8 1311768467750121216
1930 // Test calling ldfld directly on a vtype instead of a vtype address
1931 .method public static int32 test_5_call_ldfld_vtype () cil managed
1935 valuetype Tests/TailCallStruct arg
1939 stfld int32 Tests/TailCallStruct::a
1942 stfld int32 Tests/TailCallStruct::b
1944 call valuetype Tests/TailCallStruct Tests::tail2 (valuetype Tests/TailCallStruct)
1945 ldfld int32 Tests/TailCallStruct::a
1949 .method public static int32 throw_ret () cil managed
1952 newobj instance void class [mscorlib]System.OverflowException::.ctor(string)
1958 .method public static int32 throw2_ret () cil managed
1965 call int32 Tests::throw_ret ()
1969 // Test inlining a method which contains just a throw
1970 .method public static int32 test_0_inline_throw () cil managed
1978 call int32 Tests::throw2_ret ()
1981 } catch [mscorlib]System.OverflowException {
1994 .method public static int32 test_0_stelem_any_null_opt () cil managed
2002 newarr [mscorlib]System.Object
2013 stelem.any [mscorlib]System.Object
2028 .method public static hidebysig
2029 default int32 manyargs_callee (int32 a, int32 b, int32 c, int32 d, int32 e, int32 f, int32 g, int32 h, int32 i, int32 j, int32 k, int32 l, int32 m, int32 n, int32 o, int32 p) cil managed
2031 // Method begins at RVA 0x20f4
2032 // Code size 44 (0x2c)
2066 } // end of method main::callee
2069 .method public static hidebysig
2070 default int32 manyargs_tail_caller (int32 a, int32 b, int32 c, int32 d, int32 e, int32 f, int32 g, int32 h, int32 i, int32 j, int32 k, int32 l, int32 m, int32 n, int32 o, int32 p) cil managed
2072 // Method begins at RVA 0x2124
2073 // Code size 34 (0x22)
2098 IL_001c: call int32 class Tests::manyargs_callee(int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32, int32)
2100 } // end of method main::caller
2103 .method public static hidebysig
2104 default int32 test_139_many_args_tail_call () cil managed
2106 // Some platforms might not be able to AOT tail calls
2107 .custom instance void class [TestDriver]CategoryAttribute::'.ctor'(string) = (01 00 08 21 46 55 4C 4C 41 4F 54 00 00 ) // ...!FULLAOT..
2109 // Method begins at RVA 0x2154
2110 // Code size 43 (0x2b)
2120 IL_0008: ldc.i4.s 0x09
2121 IL_000a: ldc.i4.s 0x0a
2122 IL_000c: ldc.i4.s 0x0b
2123 IL_000e: ldc.i4.s 0x0c
2124 IL_0010: ldc.i4.s 0x0d
2125 IL_0012: ldc.i4.s 0x0e
2126 IL_0014: ldc.i4.s 0x0f
2127 IL_0016: ldc.i4.s 0x10
2128 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)
2130 } // end of method main::Main
2132 .class nested private auto ansi beforefieldinit R1
2133 extends [mscorlib]System.MarshalByRefObject
2135 .field public int32 test_field
2137 .method public hidebysig specialname rtspecialname
2138 instance default void '.ctor' () cil managed
2144 .method public static hidebysig
2145 default int32 return_0 () cil managed
2151 .method public static hidebysig
2152 default int32 test_1_volatile_marshalbyref_bug_432673 () cil managed
2158 newobj instance void class Tests/R1::.ctor ()
2163 stfld int32 Tests/R1::test_field
2164 call int32 class Tests::return_0 ()
2170 .method public static default int32 return_2 () cil managed
2180 .method public static hidebysig
2181 default int32 test_1_cmov_opt_regress_463357 () cil managed
2183 call int32 class Tests::return_2 ()
2196 .method public static hidebysig default int32 cmov_opt_regress_474718_inner (int32 A_1) cil managed
2199 .locals init (int32 V_0, bool V_1, bool V_2)
2208 IL_001f: brfalse IL_0036
2225 .method public static default int32 test_0_cmov_opt_regress_474718 () cil managed
2229 call int32 Tests::cmov_opt_regress_474718_inner (int32)
2233 .method public static default int32 test_5_createarr_newobj () cil managed
2238 newobj void char[]::.ctor(int32)
2243 .method public static default int32 test_0_initblk_3_regress_481458 () cil managed
2246 .locals init (native int)
2252 // Set the first value to 3
2259 // Zero out the first 3 values
2265 // Load the first value
2274 .method public static float32 GetFloat32() cil managed noinlining
2277 ldc.r8 0.19975845134874831
2281 /* Disabled until they can be fixed to run on amd64
2282 .method public static default int32 test_0_implicit_float_to_double_conversion () cil managed
2286 call float32 Tests::GetFloat32()
2287 ldc.r8 0.19975845134874831
2298 .method public static default int32 test_0_long_to_r8_un_overflow () cil managed
2301 ldc.i8 0x00FFFFFFFFFFFFFF
2304 ldc.i8 0x100000000000000
2310 ldc.i8 0x00FFFFFFFFFFFFFF
2314 ldc.i8 0x100000000000000
2324 .field public static int32 shift1
2326 .method public static int32 regress_497271_helper (int32 i) cil managed
2332 .method public static int32 test_0_regalloc_regress_497271 () cil managed
2334 .locals init (int32 var)
2337 stsfld int32 Tests::shift1
2338 ldsfld int32 Tests::shift1
2353 call int32 Tests::regress_497271_helper (int32)
2357 call int32 Tests::regress_497271_helper (int32)
2361 .field private static int32 Value
2363 .method public static hidebysig specialname
2364 default int32 regress_513931_inner () cil managed
2366 // Method begins at RVA 0x225c
2367 // Code size 52 (0x34)
2375 stsfld int32 Tests::Value
2378 IL_0001: ldsfld int32 Tests::Value
2387 IL_0010: brtrue.s IL_0027
2391 IL_0014: ldc.i4.s 0x7b
2397 IL_001d: brtrue.s IL_0023
2401 IL_0021: br.s IL_0032
2405 IL_0025: br.s IL_0032
2408 IL_002c: newobj instance void class [mscorlib]System.Exception::'.ctor'()
2414 .method public static hidebysig specialname
2415 default int32 test_0_regress_513931 () cil managed
2417 call int32 Tests::regress_513931_inner ()
2423 .method public static default int32 test_0_newarr_i8 () cil managed
2427 newarr [mscorlib]System.Boolean
2433 .method public static specialname
2434 default int32 return_1_noinline () cil managed noinlining
2442 // Only happens with -O=-deadce,cmov
2443 .method public static default int32 test_0_cmov_unused_582322 () cil managed
2449 call int32 Tests::return_1_noinline ()
2459 .method public static hidebysig
2460 default int32 test_0_regress_586664 () cil managed
2462 // Method begins at RVA 0x20f4
2463 // Code size 76 (0x4c)
2471 IL_001b: call float64 class [mscorlib]System.Math::Pow(float64, float64)
2475 IL_0023: newarr [mscorlib]System.Double
2490 IL_0036: ldc.r8 -0.5
2491 IL_003f: bne.un IL_004a
2500 .method public static int32 test_2_leave_multiple_blocks_from_end ()
2502 .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.
2503 .locals init (int32 V_0)
2531 .method public static int32 test_3_leave_multiple_blocks_from_hole ()
2533 .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.
2534 .locals init (int32 V_0)
2571 .class nested private auto ansi sealed beforefieldinit Pair`2<TKey,TValue>
2572 extends [mscorlib]System.ValueType
2574 .field public !0 key
2575 .field public !1 'value'
2578 .method private static hidebysig
2579 default bool ContentEquals<TKey,TValue> (valuetype Tests/Pair`2<!!TKey, !!TValue> v) cil managed
2584 constrained. valuetype Tests/Pair`2<!!0,!!1>
2585 IL_0007: callvirt instance bool class [mscorlib]System.Object::Equals(object)
2589 .method public static hidebysig default int32 test_0_constrained_gshared_595863 () cil managed
2592 valuetype Tests/Pair`2<string, string> V_0,
2593 valuetype Tests/Pair`2<string, string> V_1)
2595 IL_0002: initobj valuetype Tests/Pair`2<string,string>
2600 IL_0011: stfld !0 valuetype Tests/Pair`2<string,string>::key
2603 IL_001d: stfld !1 valuetype Tests/Pair`2<string,string>::'value'
2607 IL_0025: call bool class Tests::ContentEquals<string, string> (valuetype Tests/Pair`2<!!0,!!1>)
2616 .method public static default int32 test_0_wrap_non_exception_throws () cil managed
2618 .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.
2620 newobj instance void class [mscorlib]System.Object::'.ctor'()
2623 } catch class [mscorlib]System.Runtime.CompilerServices.RuntimeWrappedException {
2631 .method public static default int32 test_0_typespec_modopt () cil managed {
2632 .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.
2633 ldtoken class Tests modopt (Tests)
2639 .method public hidebysig static int32 SizeOfT<T>() cil managed
2647 .method public static default int32 test_1_sizeof_gshared () cil managed {
2648 .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.
2649 call int32 Tests::SizeOfT<int8>()
2655 .method public static default int32 test_1_sizeof_ref () cil managed {
2656 call int32 Tests::SizeOfT<object>()
2657 sizeof [mscorlib]System.IntPtr
2662 .field static public int32 volatile_int
2664 .method public static default int32 test_5_volatile_load_store () cil managed {
2665 ldsflda int32 class Tests::volatile_int
2669 ldsflda int32 class Tests::volatile_int
2675 .method public static
2676 default int32 regress_693905_inner (int32 x, int32 acc) cil managed
2678 // Method begins at RVA 0x2050
2679 // Code size 17 (0x11)
2682 IL_0001: brtrue.s IL_0005
2694 IL_000f: br.s IL_0000
2696 } // end of method Test::f
2698 .method public static
2699 default int32 test_10_regress_693905 () cil managed
2703 call int32 class Tests::regress_693905_inner(int32, int32)
2707 .method public static
2708 default int32 test_0_llvm_regress_171 () cil managed
2710 .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.
2715 call int32 Tests::return_1_noinline ()
2720 call int32 Tests::return_1_noinline ()
2728 .field public static int32 static_a
2730 .method public static
2731 default int32 test_4_ldfld_stfld_static () cil managed
2733 .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.
2736 stfld int32 Tests::static_a
2738 ldfld int32 Tests::static_a
2740 ldflda int32 Tests::static_a
2746 .method public static default int32 no_initlocals_inner () cil managed
2752 valuetype Tests/TailCallStruct V_3)
2757 .method public static default int32 test_0_no_initlocals () cil managed
2759 call int32 Tests::no_initlocals_inner()
2765 .method public hidebysig static int32 test_5_r4_fadd_mixed() cil managed
2767 // Code size 17 (0x11)
2769 .locals init (float32 V_0,
2782 .method public hidebysig static int32 test_0_fcmp_eq_r4_mixed() cil managed
2784 // Code size 32 (0x20)
2786 .locals init (float32 V_0,
2794 IL_0013: bne.un IL_001e
2801 } // end of method Tests::test_0_fcmp_eq_r4_mixed
2803 .method public hidebysig static int32 test_0_fceq_r4_mixed() cil managed
2805 // Code size 31 (0x1f)
2807 .locals init (float32 V_0,
2819 IL_0012: brfalse IL_001d
2826 } // end of method Tests::test_0_fceq_r4
2828 .method public static int32 test_0_switch_loop () cil managed
2831 .locals init (valuetype Tests/TailCallStruct V_0, int32 V_1)