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