1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
5 .assembly extern mscorlib { }
6 .assembly test_mutual_rec { }
9 .class private auto ansi beforefieldinit Test
10 extends [mscorlib]System.Object
12 .field private static int32 m
13 .field private static int32 n
14 .method private hidebysig static int32 Main() il managed
20 call void [mscorlib]System.Environment::set_ExitCode(int32)
21 ldsfld int32 JitTest.Test::n
25 ldsfld int32 JitTest.Test::m
29 ldstr "PASSED: 10! == 3628800"
30 call void [mscorlib]System.Console::WriteLine(class System.String)
35 ldstr "FAILED: 10! != "
36 ldsflda int32 JitTest.Test::m
37 call instance class System.String [mscorlib]System.Int32::ToString()
38 call class System.String [mscorlib]System.String::Concat(class System.String,
40 call void [mscorlib]System.Console::WriteLine(class System.String)
45 ldsfld int32 JitTest.Test::m
46 ldsfld int32 JitTest.Test::n
50 stsfld int32 JitTest.Test::n
52 stsfld int32 JitTest.Test::m
54 ldsfld int32 JitTest.Test::n
58 ldftn int32 JitTest.Test::Main()
61 ldftn int32 JitTest.Test::Main1()
64 ldftn int32 JitTest.Test::Main2()
68 } // end of method Test::Main
69 .method private hidebysig static int32 Main1() il managed
74 call void [mscorlib]System.Environment::set_ExitCode(int32)
75 ldsfld int32 JitTest.Test::n
79 ldsfld int32 JitTest.Test::m
83 ldstr "PASSED: 10! == 3628800"
84 call void [mscorlib]System.Console::WriteLine(class System.String)
89 ldstr "FAILED: 10! != "
90 ldsflda int32 JitTest.Test::m
91 call instance class System.String [mscorlib]System.Int32::ToString()
92 call class System.String [mscorlib]System.String::Concat(class System.String,
94 call void [mscorlib]System.Console::WriteLine(class System.String)
99 ldsfld int32 JitTest.Test::m
100 ldsfld int32 JitTest.Test::n
104 stsfld int32 JitTest.Test::n
106 stsfld int32 JitTest.Test::m
108 ldsfld int32 JitTest.Test::n
111 switch (CASE1, CASE2)
112 ldftn int32 JitTest.Test::Main()
115 ldftn int32 JitTest.Test::Main1()
118 ldftn int32 JitTest.Test::Main2()
122 } // end of method Test::Main
123 .method private hidebysig static int32 Main2() il managed
128 call void [mscorlib]System.Environment::set_ExitCode(int32)
129 ldsfld int32 JitTest.Test::n
133 ldsfld int32 JitTest.Test::m
137 ldstr "PASSED: 10! == 3628800"
138 call void [mscorlib]System.Console::WriteLine(class System.String)
143 ldstr "FAILED: 10! != "
144 ldsflda int32 JitTest.Test::m
145 call instance class System.String [mscorlib]System.Int32::ToString()
146 call class System.String [mscorlib]System.String::Concat(class System.String,
148 call void [mscorlib]System.Console::WriteLine(class System.String)
153 ldsfld int32 JitTest.Test::m
154 ldsfld int32 JitTest.Test::n
158 stsfld int32 JitTest.Test::n
160 stsfld int32 JitTest.Test::m
162 ldsfld int32 JitTest.Test::n
165 switch (CASE1, CASE2)
166 ldftn int32 JitTest.Test::Main()
169 ldftn int32 JitTest.Test::Main1()
172 ldftn int32 JitTest.Test::Main2()
176 } // end of method Test::Main
178 .method private hidebysig specialname rtspecialname static
179 void .cctor() il managed
181 // Code size 14 (0xe)
184 IL_0001: stsfld int32 JitTest.Test::m
186 IL_0008: stsfld int32 JitTest.Test::n
188 } // end of method Test::.cctor
190 .method public hidebysig specialname rtspecialname
191 instance void .ctor() il managed
196 IL_0001: call instance void [mscorlib]System.Object::.ctor()
198 } // end of method Test::.ctor
200 } // end of class Test
202 } // end of namespace JitTest
204 //*********** DISASSEMBLY COMPLETE ***********************