(DISTFILES): Comment out a few missing files.
[mono-project.git] / mcs / ilasm / tests / test-seh-c.il
blobaeb7262ff31393f097c33417865c1bc9ebab4be9
1 //
2 // Test catch and filter blocks
3 //
4 // Author(s):
5 //  Jackson Harper (Jackson@LatitudeGeo.com)
6 //
7 // (C) 2003 Jackson Harper, All rights reserved
8 //
10 .assembly extern mscorlib { }
11 .assembly 'test-seh-b' { }
14 .class public T {
16         .field private static int32 exc_not_thrown
17         .field private static int32 flt_caught
18   
19         .method public static specialname void .cctor ()
20         {
21                 ldc.i4.0
22                 stsfld int32 T::exc_not_thrown
24                 ldc.i4.0
25                 stsfld int32 T::flt_caught
27                 ret
28         }
30         .method public static int32 Main ()
31         {
32                 .entrypoint
34                 .try {
35                         ldc.i4.0
36                         ldc.i4.0
37                         div
39                         ldc.i4.1
40                         stsfld int32 T::exc_not_thrown
42                         leave outer
43                 } filter {
44                         pop
45                         ldc.i4.1
46                         endfilter
47                 } {
48                         ldc.i4.1
49                         stsfld int32 T::flt_caught
50                         leave outer
51                 }
53         outer:
54                 ldsfld int32 T::exc_not_thrown
55                 brtrue fail
57                 ldsfld int32 T::flt_caught
58                 brfalse fail
60         pass:
61                 ldstr "PASS"
62                 call void [mscorlib]System.Console::WriteLine (string)
63                 ldc.i4.0
64                 ret
66         fail:
67                 ldstr "FAIL"
68                 call void [mscorlib]System.Console::WriteLine (string)
69                 ldc.i4.1
70                 ret
72         }
75