Fixed some testcases
[cacao.git] / tests / regression / jasmin / test_many_monitors.j
1 .class public test_many_monitors
2 .super java/lang/Object
3
4 ; ======================================================================
5
6 .method public <init>()V
7    aload_0
8    invokenonvirtual java/lang/Object/<init>()V
9    return
10 .end method
11
12 .method public static checkI(I)V
13         .limit locals 1
14         .limit stack 10
15         getstatic java/lang/System/out Ljava/io/PrintStream;
16         iload_0
17         invokevirtual java/io/PrintStream/println(I)V
18         return
19 .end method
20
21 ; ======================================================================
22
23 .method public static main([Ljava/lang/String;)V
24         .limit stack 2
25         .limit locals 2
26
27         ldc 567
28         istore 1
29
30         new test
31         dup
32         invokespecial test/<init>()V
33
34         dup
35         monitorenter
36         dup
37         monitorenter
38         dup
39         monitorenter
40         dup
41         monitorenter
42         dup
43         monitorenter
44         dup
45         monitorenter
46         dup
47         monitorenter
48         dup
49         monitorenter
50         dup
51         monitorenter
52         dup
53         monitorenter
54         dup
55         monitorenter
56         dup
57         monitorenter
58         dup
59         monitorenter
60         dup
61         monitorenter
62         dup
63         monitorenter
64         dup
65         monitorenter
66
67         iload 1
68         invokestatic test_many_monitors/checkI(I)V
69         iinc 1 2
70         ; OUTPUT: 567
71
72         dup
73         monitorexit
74         dup
75         monitorexit
76         dup
77         monitorexit
78         dup
79         monitorexit
80         dup
81         monitorexit
82         dup
83         monitorexit
84         dup
85         monitorexit
86         dup
87         monitorexit
88         dup
89         monitorexit
90         dup
91         monitorexit
92         dup
93         monitorexit
94         dup
95         monitorexit
96         dup
97         monitorexit
98         dup
99         monitorexit
100         dup
101         monitorexit
102         dup
103         monitorexit
104
105         iload 1
106         invokestatic test_many_monitors/checkI(I)V
107         ; OUTPUT: 569
108
109         return
110 .end method