2010-02-19 Rodrigo Kumpera <rkumpera@novell.com>
[mono.git] / mono / tests / generic-tailcall2.2.il
blobf665624b2167f6eaa29d25fea4d814d0485ef8e8
1 .assembly extern mscorlib
3   .ver 2:0:0:0
4   .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
6 .assembly 'generic-tailcall2.2'
8   .custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::'.ctor'() =  (
9                 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78   // ....T..WrapNonEx
10                 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01       ) // ceptionThrows.
12   .hash algorithm 0x00008004
13   .ver  0:0:0:0
15 .module 'generic-tailcall2.2.exe' // GUID = {84BAE15D-0B00-4F8D-8A54-1C09F6F10C96}
18   .class private auto ansi beforefieldinit Gen`1<T>
19         extends [mscorlib]System.Object
20   {
22     // method line 1
23     .method public hidebysig  specialname  rtspecialname 
24            instance default void '.ctor' ()  cil managed 
25     {
26         // Method begins at RVA 0x20ec
27         // Code size 7 (0x7)
28         .maxstack 8
29         IL_0000:  ldarg.0 
30         IL_0001:  call instance void object::'.ctor'()
31         IL_0006:  ret 
32     } // end of method Gen`1::.ctor
34     // method line 2
35     .method public static  hidebysig 
36            default !T[] newArr ()  cil managed 
37     {
38         // Method begins at RVA 0x20f4
39         // Code size 7 (0x7)
40         .maxstack 8
41         IL_0000:  ldc.i4.3 
42         IL_0001:  newarr !0
43         IL_0006:  ret 
44     } // end of method Gen`1::newArr
46   } // end of class Gen`1
48   .class public auto ansi beforefieldinit main
49         extends [mscorlib]System.Object
50   {
52     // method line 3
53     .method public hidebysig  specialname  rtspecialname 
54            instance default void '.ctor' ()  cil managed 
55     {
56         // Method begins at RVA 0x20fc
57         // Code size 7 (0x7)
58         .maxstack 8
59         IL_0000:  ldarg.0 
60         IL_0001:  call instance void object::'.ctor'()
61         IL_0006:  ret 
62     } // end of method main::.ctor
64     // method line 4
65     .method public static  hidebysig 
66            default string[] work ()  cil managed 
67     {
68         // Method begins at RVA 0x2104
69         // Code size 6 (0x6)
70         .maxstack 8
71                   tail.
72         IL_0000:  call !0[] class Gen`1<string>::newArr()
73         IL_0005:  ret 
74     } // end of method main::work
76     // method line 5
77     .method public static  hidebysig 
78            default int32 Main ()  cil managed 
79     {
80         // Method begins at RVA 0x210c
81         .entrypoint
82         // Code size 31 (0x1f)
83         .maxstack 6
84         .locals init (
85                 string[]        V_0)
86         IL_0000:  call string[] class main::work()
87         IL_0005:  stloc.0 
88         IL_0006:  ldloc.0 
89         IL_0007:  callvirt instance class [mscorlib]System.Type object::GetType()
90         IL_000c:  ldtoken string[]
91         IL_0011:  call class [mscorlib]System.Type class [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle)
92         IL_0016:  beq IL_001d
94         IL_001b:  ldc.i4.1 
95         IL_001c:  ret 
96         IL_001d:  ldc.i4.0 
97         IL_001e:  ret 
98     } // end of method main::Main
100   } // end of class main