2010-04-07 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / tests / generics-sharing-other-exc.2.il
1 .assembly extern mscorlib
2 {
3   .ver 2:0:0:0
4   .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
5 }
6 .assembly 'generics-sharing-other-exc.2'
7 {
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.
11
12   .hash algorithm 0x00008004
13   .ver  0:0:0:0
14 }
15 .module 'generics-sharing-other-exc.2.exe' // GUID = {770295FB-70A6-4755-9969-EFE664D15786}
16
17
18   .class public auto ansi beforefieldinit ClassA
19         extends [mscorlib]System.Object
20   {
21
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 ClassA::.ctor
33
34   } // end of class ClassA
35
36   .class public auto ansi beforefieldinit NonGen
37         extends [mscorlib]System.Object
38   {
39
40     // method line 3
41     .method public hidebysig  specialname  rtspecialname 
42            instance default void .ctor ()  cil managed 
43     {
44         // Method begins at RVA 0x20fc
45         // Code size 7 (0x7)
46         .maxstack 8
47         IL_0000:  ldarg.0 
48         IL_0001:  call instance void object::.ctor()
49         IL_0006:  ret 
50     } // end of method NonGen::.ctor
51
52     // method line 4
53     .method public static  hidebysig 
54            default void doThrow ()  cil managed 
55     {
56         // Method begins at RVA 0x2104
57         // Code size 6 (0x6)
58         .maxstack 8
59         //      IL_0000:  ldc.i4.3 
60         //      IL_0001:  newarr ClassA
61         IL_0000:  newobj instance void class ClassA::.ctor()
62         IL_0005:  throw 
63     } // end of method NonGen::doThrow
64
65     // method line 5
66     .method public static  hidebysig 
67            default object newArr ()  cil managed 
68     {
69         // Method begins at RVA 0x210c
70         // Code size 7 (0x7)
71         .maxstack 8
72         IL_0000:  ldc.i4.3 
73         IL_0001:  newarr ClassA
74         IL_0006:  ret 
75     } // end of method NonGen::newArr
76
77   } // end of class NonGen
78
79   .class public auto ansi beforefieldinit Gen`1<T>
80         extends [mscorlib]System.Object
81   {
82
83     // method line 6
84     .method public hidebysig  specialname  rtspecialname 
85            instance default void .ctor ()  cil managed 
86     {
87         // Method begins at RVA 0x2114
88         // Code size 7 (0x7)
89         .maxstack 8
90         IL_0000:  ldarg.0 
91         IL_0001:  call instance void object::.ctor()
92         IL_0006:  ret 
93     } // end of method Gen`1::.ctor
94
95     // method line 7
96     .method public hidebysig 
97            instance default void except ()  cil managed 
98     {
99         // Method begins at RVA 0x211c
100         // Code size 17 (0x11)
101         .maxstack 1
102         .try { // 0
103           IL_0000:  call void class NonGen::doThrow()
104           IL_0005:  leave IL_0010
105
106         } // end .try 0
107         catch !0 { // 0
108           IL_000a:  pop 
109           IL_000b:  leave IL_0010
110
111         } // end handler 0
112         IL_0010:  ret 
113     } // end of method Gen`1::except
114
115   } // end of class Gen`1
116
117   .class public auto ansi beforefieldinit main
118         extends [mscorlib]System.Object
119   {
120
121     // method line 8
122     .method public hidebysig  specialname  rtspecialname 
123            instance default void .ctor ()  cil managed 
124     {
125         // Method begins at RVA 0x2158
126         // Code size 7 (0x7)
127         .maxstack 8
128         IL_0000:  ldarg.0 
129         IL_0001:  call instance void object::.ctor()
130         IL_0006:  ret 
131     } // end of method main::.ctor
132
133     // method line 9
134     .method public static  hidebysig 
135            default int32 Main ()  cil managed 
136     {
137         // Method begins at RVA 0x2160
138         .entrypoint
139         // Code size 44 (0x2c)
140         .maxstack 4
141         .locals init (
142                 class Gen`1<class ClassA>       V_0,
143                 int32   V_1)
144         IL_0000:  newobj instance void class Gen`1<class ClassA>::.ctor()
145         IL_0005:  stloc.0 
146         .try { // 0
147           IL_0006:  ldloc.0 
148           IL_0007:  callvirt instance void class Gen`1<class ClassA>::except()
149           IL_000c:  leave IL_0028
150
151         } // end .try 0
152         catch class ClassA { // 0
153           IL_0011:  pop 
154           IL_0012:  ldstr "exception not caught"
155           IL_0017:  call void class [mscorlib]System.Console::WriteLine(string)
156           IL_001c:  ldc.i4.1 
157           IL_001d:  stloc.1 
158           IL_001e:  leave IL_002a
159
160           IL_0023:  leave IL_0028
161
162         } // end handler 0
163         IL_0028:  ldc.i4.0 
164         IL_0029:  ret 
165         IL_002a:  ldloc.1 
166         IL_002b:  ret 
167     } // end of method main::Main
168
169   } // end of class main
170