Merge branch 'master' of github.com:mono/mono
[mono.git] / mono / tests / verifier / invalid_bad_merge_with_leave.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 'bug'
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 bug.exe // GUID = {7CDDF4B6-7581-4902-9709-6155199DC325}
16
17
18 .class private auto ansi beforefieldinit Program extends [mscorlib]System.Object
19 {
20         .method public static hidebysig default void Main ()  cil managed 
21     {
22         .entrypoint
23         .maxstack 2
24         ret
25         }
26
27
28         .method public static hidebysig default int32 Bla (object arg)  cil managed 
29     {
30         .locals init ( class [mscorlib]System.Exception V_0)
31
32         nop       
33         ldarg.0   
34         ldnull    
35         ceq       
36         brfalse   LB_0
37
38         nop       
39         nop       
40
41         leave.s   LB_1
42
43 LB_0:
44         nop
45         nop
46         nop       
47         ldarg.0   
48
49 LB_1:
50         isinst    object
51         ldnull    
52          ceq       
53         ldc.i4.0  
54         ceq       
55         brfalse   LB_2
56
57         nop       
58         ldarg.0   
59         castclass object
60         callvirt     int32 object::GetHashCode ()
61         pop
62
63 LB_2:
64         nop       
65         nop       
66         nop       
67         ldarg.0   
68         isinst    object
69         ldnull    
70         ceq       
71         ldc.i4.0  
72         ceq       
73         brfalse   LB_3
74
75         nop       
76         ldarg.0   
77         unbox     int32
78         ldobj     int32
79         ret   
80
81 LB_3:
82         nop       
83         nop       
84         nop       
85         ldc.i4.0
86                 ret 
87     }
88 }
89