2008-06-24 Cameron Zwarich <cwzwarich@uwaterloo.ca>
[WebKit-https.git] / LayoutTests / fast / js / resources / codegen-loops-logical-nodes.js
1 description(
2 "Tests loop codegen when the condition is a logical node."
3 );
4
5 function while_or_eq()
6 {
7     var a = 0;
8     while (a == 0 || a == 0)
9         return true;
10     return false;
11 }
12
13 shouldBeTrue("while_or_eq()");
14
15 function while_or_neq()
16 {
17     var a = 0;
18     while (a != 1 || a != 1)
19         return true;
20     return false;
21 }
22
23 shouldBeTrue("while_or_neq()");
24
25 function while_or_less()
26 {
27     var a = 0;
28     while (a < 1 || a < 1)
29         return true;
30     return false;
31 }
32
33 shouldBeTrue("while_or_less()");
34
35 function while_or_lesseq()
36 {
37     var a = 0;
38     while (a <= 1 || a <= 1)
39         return true;
40     return false;
41 }
42
43 shouldBeTrue("while_or_lesseq()");
44
45 function while_and_eq()
46 {
47     var a = 0;
48     while (a == 0 && a == 0)
49         return true;
50     return false;
51 }
52
53 shouldBeTrue("while_and_eq()");
54
55 function while_and_neq()
56 {
57     var a = 0;
58     while (a != 1 && a != 1)
59         return true;
60     return false;
61 }
62
63 shouldBeTrue("while_and_neq()");
64
65 function while_and_less()
66 {
67     var a = 0;
68     while (a < 1 && a < 1)
69         return true;
70     return false;
71 }
72
73 shouldBeTrue("while_and_less()");
74
75 function while_and_lesseq()
76 {
77     var a = 0;
78     while (a <= 1 && a <= 1)
79         return true;
80     return false;
81 }
82
83 shouldBeTrue("while_and_lesseq()");
84
85 function for_or_eq()
86 {
87     for (var a = 0; a == 0 || a == 0; )
88         return true;
89     return false;
90 }
91
92 shouldBeTrue("for_or_eq()");
93
94 function for_or_neq()
95 {
96     for (var a = 0; a != 1 || a != 1; )
97         return true;
98     return false;
99 }
100
101 shouldBeTrue("for_or_neq()");
102
103 function for_or_less()
104 {
105     for (var a = 0; a < 1 || a < 1; )
106         return true;
107     return false;
108 }
109
110 shouldBeTrue("for_or_less()");
111
112 function for_or_lesseq()
113 {
114     for (var a = 0; a <= 1 || a <= 1; )
115         return true;
116     return false;
117 }
118
119 shouldBeTrue("for_or_lesseq()");
120
121 function for_and_eq()
122 {
123     for (var a = 0; a == 0 && a == 0; )
124         return true;
125     return false;
126 }
127
128 shouldBeTrue("for_and_eq()");
129
130 function for_and_neq()
131 {
132     for (var a = 0; a != 1 && a != 1; )
133         return true;
134     return false;
135 }
136
137 shouldBeTrue("for_and_neq()");
138
139 function for_and_less()
140 {
141     for (var a = 0; a < 1 && a < 1; )
142         return true;
143     return false;
144 }
145
146 shouldBeTrue("for_and_less()");
147
148 function for_and_lesseq()
149 {
150     for (var a = 0; a <= 1 && a <= 1; )
151         return true;
152     return false;
153 }
154
155 shouldBeTrue("for_and_lesseq()");
156
157 function dowhile_or_eq()
158 {
159     var a = 0;
160     var i = 0;
161     do {
162         if (i > 0)
163             return true;
164         i++;
165     } while (a == 0 || a == 0)
166     return false;
167 }
168
169 shouldBeTrue("dowhile_or_eq()");
170
171 function dowhile_or_neq()
172 {
173     var a = 0;
174     var i = 0;
175     do {
176         if (i > 0)
177             return true;
178         i++;
179     } while (a != 1 || a != 1)
180     return false;
181 }
182
183 shouldBeTrue("dowhile_or_neq()");
184
185 function dowhile_or_less()
186 {
187     var a = 0;
188     var i = 0;
189     do {
190         if (i > 0)
191             return true;
192         i++;
193     } while (a < 1 || a < 1)
194     return false;
195 }
196
197 shouldBeTrue("dowhile_or_less()");
198
199 function dowhile_or_lesseq()
200 {
201     var a = 0;
202     var i = 0;
203     do {
204         if (i > 0)
205             return true;
206         i++;
207     } while (a <= 1 || a <= 1)
208     return false;
209 }
210
211 shouldBeTrue("dowhile_or_lesseq()");
212
213 function dowhile_and_eq()
214 {
215     var a = 0;
216     var i = 0;
217     do {
218         if (i > 0)
219             return true;
220         i++;
221     } while (a == 0 && a == 0)
222     return false;
223 }
224
225 shouldBeTrue("dowhile_and_eq()");
226
227 function dowhile_and_neq()
228 {
229     var a = 0;
230     var i = 0;
231     do {
232         if (i > 0)
233             return true;
234         i++;
235     } while (a != 1 && a != 1)
236     return false;
237 }
238
239 shouldBeTrue("dowhile_and_neq()");
240
241 function dowhile_and_less()
242 {
243     var a = 0;
244     var i = 0;
245     do {
246         if (i > 0)
247             return true;
248         i++;
249     } while (a < 1 && a < 1)
250     return false;
251 }
252
253 shouldBeTrue("dowhile_and_less()");
254
255 function dowhile_and_lesseq()
256 {
257     var a = 0;
258     var i = 0;
259     do {
260         if (i > 0)
261             return true;
262         i++;
263     } while (a <= 1 && a <= 1)
264     return false;
265 }
266
267 shouldBeTrue("dowhile_and_lesseq()");
268
269 var successfullyParsed = true;