OLD | NEW |
1 # | 1 # |
2 # Autogenerated by generate-bytecode-expectations. | 2 # Autogenerated by generate-bytecode-expectations. |
3 # | 3 # |
4 | 4 |
5 --- | 5 --- |
6 pool type: mixed | 6 pool type: mixed |
7 execute: yes | 7 execute: yes |
8 wrap: yes | 8 wrap: yes |
9 | 9 |
10 --- | 10 --- |
11 snippet: " | 11 snippet: " |
12 var x = 0; | 12 var x = 0; |
13 while (false) { x = 99; break; continue; } | 13 while (false) { x = 99; break; continue; } |
14 return x; | 14 return x; |
15 " | 15 " |
16 frame size: 1 | 16 frame size: 1 |
17 parameter count: 1 | 17 parameter count: 1 |
18 bytecode array length: 5 | 18 bytecode array length: 7 |
19 bytecodes: [ | 19 bytecodes: [ |
20 /* 30 E> */ B(StackCheck), | 20 /* 30 E> */ B(StackCheck), |
21 /* 42 S> */ B(LdaZero), | 21 /* 42 S> */ B(LdaZero), |
22 /* 42 E> */ B(Star), R(0), | 22 /* 42 E> */ B(Star), R(0), |
| 23 /* 88 S> */ B(Ldar), R(0), |
23 /* 98 S> */ B(Return), | 24 /* 98 S> */ B(Return), |
24 ] | 25 ] |
25 constant pool: [ | 26 constant pool: [ |
26 ] | 27 ] |
27 handlers: [ | 28 handlers: [ |
28 ] | 29 ] |
29 | 30 |
30 --- | 31 --- |
31 snippet: " | 32 snippet: " |
32 var x = 0; | 33 var x = 0; |
33 while (false) { | 34 while (false) { |
34 x = x + 1; | 35 x = x + 1; |
35 }; | 36 }; |
36 return x; | 37 return x; |
37 " | 38 " |
38 frame size: 1 | 39 frame size: 1 |
39 parameter count: 1 | 40 parameter count: 1 |
40 bytecode array length: 5 | 41 bytecode array length: 7 |
41 bytecodes: [ | 42 bytecodes: [ |
42 /* 30 E> */ B(StackCheck), | 43 /* 30 E> */ B(StackCheck), |
43 /* 42 S> */ B(LdaZero), | 44 /* 42 S> */ B(LdaZero), |
44 /* 42 E> */ B(Star), R(0), | 45 /* 42 E> */ B(Star), R(0), |
| 46 /* 77 S> */ B(Ldar), R(0), |
45 /* 87 S> */ B(Return), | 47 /* 87 S> */ B(Return), |
46 ] | 48 ] |
47 constant pool: [ | 49 constant pool: [ |
48 ] | 50 ] |
49 handlers: [ | 51 handlers: [ |
50 ] | 52 ] |
51 | 53 |
52 --- | 54 --- |
53 snippet: " | 55 snippet: " |
54 var x = 0; | 56 var x = 0; |
55 var y = 1; | 57 var y = 1; |
56 while (x < 10) { | 58 while (x < 10) { |
57 y = y * 12; | 59 y = y * 12; |
58 x = x + 1; | 60 x = x + 1; |
59 if (x == 3) continue; | 61 if (x == 3) continue; |
60 if (x == 4) break; | 62 if (x == 4) break; |
61 } | 63 } |
62 return y; | 64 return y; |
63 " | 65 " |
64 frame size: 3 | 66 frame size: 2 |
65 parameter count: 1 | 67 parameter count: 1 |
66 bytecode array length: 66 | 68 bytecode array length: 48 |
67 bytecodes: [ | 69 bytecodes: [ |
68 /* 30 E> */ B(StackCheck), | 70 /* 30 E> */ B(StackCheck), |
69 /* 42 S> */ B(LdaZero), | 71 /* 42 S> */ B(LdaZero), |
70 /* 42 E> */ B(Star), R(0), | 72 /* 42 E> */ B(Star), R(0), |
71 /* 53 S> */ B(LdaSmi), U8(1), | 73 /* 53 S> */ B(LdaSmi), U8(1), |
72 /* 53 E> */ B(Star), R(1), | 74 /* 53 E> */ B(Star), R(1), |
73 /* 65 S> */ B(Ldar), R(0), | 75 /* 65 S> */ B(LdaSmi), U8(10), |
74 B(Star), R(2), | 76 /* 65 E> */ B(TestLessThan), R(0), |
75 B(LdaSmi), U8(10), | 77 B(JumpIfFalse), U8(33), |
76 /* 65 E> */ B(TestLessThan), R(2), | |
77 B(JumpIfFalse), U8(47), | |
78 /* 56 E> */ B(StackCheck), | 78 /* 56 E> */ B(StackCheck), |
79 /* 75 S> */ B(Ldar), R(1), | 79 /* 75 S> */ B(LdaSmi), U8(12), |
80 B(Star), R(2), | 80 B(Mul), R(1), |
81 B(LdaSmi), U8(12), | |
82 B(Mul), R(2), | |
83 /* 77 E> */ B(Star), R(1), | 81 /* 77 E> */ B(Star), R(1), |
84 /* 89 S> */ B(Ldar), R(0), | 82 /* 89 S> */ B(LdaSmi), U8(1), |
85 B(Star), R(2), | 83 B(Add), R(0), |
86 B(LdaSmi), U8(1), | |
87 B(Add), R(2), | |
88 /* 91 E> */ B(Star), R(0), | 84 /* 91 E> */ B(Star), R(0), |
89 /* 102 S> */ B(Star), R(2), | 85 /* 102 S> */ B(LdaSmi), U8(3), |
90 B(LdaSmi), U8(3), | 86 /* 108 E> */ B(TestEqual), R(0), |
91 /* 108 E> */ B(TestEqual), R(2), | |
92 B(JumpIfFalse), U8(4), | 87 B(JumpIfFalse), U8(4), |
93 /* 114 S> */ B(Jump), U8(14), | 88 /* 114 S> */ B(Jump), U8(10), |
94 /* 126 S> */ B(Ldar), R(0), | 89 /* 126 S> */ B(LdaSmi), U8(4), |
95 B(Star), R(2), | 90 /* 132 E> */ B(TestEqual), R(0), |
96 B(LdaSmi), U8(4), | |
97 /* 132 E> */ B(TestEqual), R(2), | |
98 B(JumpIfFalse), U8(4), | 91 B(JumpIfFalse), U8(4), |
99 /* 138 S> */ B(Jump), U8(4), | 92 /* 138 S> */ B(Jump), U8(4), |
100 B(Jump), U8(-53), | 93 B(Jump), U8(-35), |
101 /* 147 S> */ B(Ldar), R(1), | 94 /* 147 S> */ B(Ldar), R(1), |
102 /* 157 S> */ B(Return), | 95 /* 157 S> */ B(Return), |
103 ] | 96 ] |
104 constant pool: [ | 97 constant pool: [ |
105 ] | 98 ] |
106 handlers: [ | 99 handlers: [ |
107 ] | 100 ] |
108 | 101 |
109 --- | 102 --- |
110 snippet: " | 103 snippet: " |
111 var i = 0; | 104 var i = 0; |
112 while (true) { | 105 while (true) { |
113 if (i < 0) continue; | 106 if (i < 0) continue; |
114 if (i == 3) break; | 107 if (i == 3) break; |
115 if (i == 4) break; | 108 if (i == 4) break; |
116 if (i == 10) continue; | 109 if (i == 10) continue; |
117 if (i == 5) break; | 110 if (i == 5) break; |
118 i = i + 1; | 111 i = i + 1; |
119 } | 112 } |
120 return i; | 113 return i; |
121 " | 114 " |
122 frame size: 2 | 115 frame size: 1 |
123 parameter count: 1 | 116 parameter count: 1 |
124 bytecode array length: 79 | 117 bytecode array length: 55 |
125 bytecodes: [ | 118 bytecodes: [ |
126 /* 30 E> */ B(StackCheck), | 119 /* 30 E> */ B(StackCheck), |
127 /* 42 S> */ B(LdaZero), | 120 /* 42 S> */ B(LdaZero), |
128 /* 42 E> */ B(Star), R(0), | 121 /* 42 E> */ B(Star), R(0), |
129 /* 45 E> */ B(StackCheck), | 122 /* 45 E> */ B(StackCheck), |
130 /* 62 S> */ B(Ldar), R(0), | 123 /* 62 S> */ B(LdaZero), |
131 B(Star), R(1), | 124 /* 68 E> */ B(TestLessThan), R(0), |
132 B(LdaZero), | |
133 /* 68 E> */ B(TestLessThan), R(1), | |
134 B(JumpIfFalse), U8(4), | 125 B(JumpIfFalse), U8(4), |
135 /* 73 S> */ B(Jump), U8(60), | 126 /* 73 S> */ B(Jump), U8(40), |
136 /* 85 S> */ B(Ldar), R(0), | 127 /* 85 S> */ B(LdaSmi), U8(3), |
137 B(Star), R(1), | 128 /* 91 E> */ B(TestEqual), R(0), |
138 B(LdaSmi), U8(3), | |
139 /* 91 E> */ B(TestEqual), R(1), | |
140 B(JumpIfFalse), U8(4), | 129 B(JumpIfFalse), U8(4), |
141 /* 97 S> */ B(Jump), U8(50), | 130 /* 97 S> */ B(Jump), U8(34), |
142 /* 106 S> */ B(Ldar), R(0), | 131 /* 106 S> */ B(LdaSmi), U8(4), |
143 B(Star), R(1), | 132 /* 112 E> */ B(TestEqual), R(0), |
144 B(LdaSmi), U8(4), | |
145 /* 112 E> */ B(TestEqual), R(1), | |
146 B(JumpIfFalse), U8(4), | 133 B(JumpIfFalse), U8(4), |
147 /* 118 S> */ B(Jump), U8(38), | 134 /* 118 S> */ B(Jump), U8(26), |
148 /* 127 S> */ B(Ldar), R(0), | 135 /* 127 S> */ B(LdaSmi), U8(10), |
149 B(Star), R(1), | 136 /* 133 E> */ B(TestEqual), R(0), |
150 B(LdaSmi), U8(10), | |
151 /* 133 E> */ B(TestEqual), R(1), | |
152 B(JumpIfFalse), U8(4), | 137 B(JumpIfFalse), U8(4), |
153 /* 140 S> */ B(Jump), U8(24), | 138 /* 140 S> */ B(Jump), U8(16), |
154 /* 152 S> */ B(Ldar), R(0), | 139 /* 152 S> */ B(LdaSmi), U8(5), |
155 B(Star), R(1), | 140 /* 158 E> */ B(TestEqual), R(0), |
156 B(LdaSmi), U8(5), | |
157 /* 158 E> */ B(TestEqual), R(1), | |
158 B(JumpIfFalse), U8(4), | 141 B(JumpIfFalse), U8(4), |
159 /* 164 S> */ B(Jump), U8(14), | 142 /* 164 S> */ B(Jump), U8(10), |
160 /* 173 S> */ B(Ldar), R(0), | 143 /* 173 S> */ B(LdaSmi), U8(1), |
161 B(Star), R(1), | 144 B(Add), R(0), |
162 B(LdaSmi), U8(1), | |
163 B(Add), R(1), | |
164 /* 175 E> */ B(Star), R(0), | 145 /* 175 E> */ B(Star), R(0), |
165 B(Jump), U8(-70), | 146 B(Jump), U8(-46), |
166 /* 186 S> */ B(Ldar), R(0), | 147 /* 186 S> */ B(Ldar), R(0), |
167 /* 196 S> */ B(Return), | 148 /* 196 S> */ B(Return), |
168 ] | 149 ] |
169 constant pool: [ | 150 constant pool: [ |
170 ] | 151 ] |
171 handlers: [ | 152 handlers: [ |
172 ] | 153 ] |
173 | 154 |
174 --- | 155 --- |
175 snippet: " | 156 snippet: " |
176 var i = 0; | 157 var i = 0; |
177 while (true) { | 158 while (true) { |
178 while (i < 3) { | 159 while (i < 3) { |
179 if (i == 2) break; | 160 if (i == 2) break; |
180 i = i + 1; | 161 i = i + 1; |
181 } | 162 } |
182 i = i + 1; | 163 i = i + 1; |
183 break; | 164 break; |
184 } | 165 } |
185 return i; | 166 return i; |
186 " | 167 " |
187 frame size: 2 | 168 frame size: 1 |
188 parameter count: 1 | 169 parameter count: 1 |
189 bytecode array length: 57 | 170 bytecode array length: 41 |
190 bytecodes: [ | 171 bytecodes: [ |
191 /* 30 E> */ B(StackCheck), | 172 /* 30 E> */ B(StackCheck), |
192 /* 42 S> */ B(LdaZero), | 173 /* 42 S> */ B(LdaZero), |
193 /* 42 E> */ B(Star), R(0), | 174 /* 42 E> */ B(Star), R(0), |
194 /* 45 E> */ B(StackCheck), | 175 /* 45 E> */ B(StackCheck), |
195 /* 71 S> */ B(Ldar), R(0), | 176 /* 71 S> */ B(LdaSmi), U8(3), |
196 B(Star), R(1), | 177 /* 71 E> */ B(TestLessThan), R(0), |
197 B(LdaSmi), U8(3), | 178 B(JumpIfFalse), U8(19), |
198 /* 71 E> */ B(TestLessThan), R(1), | |
199 B(JumpIfFalse), U8(27), | |
200 /* 62 E> */ B(StackCheck), | 179 /* 62 E> */ B(StackCheck), |
201 /* 82 S> */ B(Ldar), R(0), | 180 /* 82 S> */ B(LdaSmi), U8(2), |
202 B(Star), R(1), | 181 /* 88 E> */ B(TestEqual), R(0), |
203 B(LdaSmi), U8(2), | |
204 /* 88 E> */ B(TestEqual), R(1), | |
205 B(JumpIfFalse), U8(4), | 182 B(JumpIfFalse), U8(4), |
206 /* 94 S> */ B(Jump), U8(14), | 183 /* 94 S> */ B(Jump), U8(10), |
207 /* 105 S> */ B(Ldar), R(0), | 184 /* 105 S> */ B(LdaSmi), U8(1), |
208 B(Star), R(1), | 185 B(Add), R(0), |
209 B(LdaSmi), U8(1), | |
210 B(Add), R(1), | |
211 /* 107 E> */ B(Star), R(0), | 186 /* 107 E> */ B(Star), R(0), |
212 B(Jump), U8(-33), | 187 B(Jump), U8(-21), |
213 /* 122 S> */ B(Ldar), R(0), | 188 /* 122 S> */ B(LdaSmi), U8(1), |
214 B(Star), R(1), | 189 B(Add), R(0), |
215 B(LdaSmi), U8(1), | |
216 B(Add), R(1), | |
217 /* 124 E> */ B(Star), R(0), | 190 /* 124 E> */ B(Star), R(0), |
218 /* 135 S> */ B(Jump), U8(4), | 191 /* 135 S> */ B(Jump), U8(4), |
219 B(Jump), U8(-48), | 192 B(Jump), U8(-32), |
220 /* 144 S> */ B(Ldar), R(0), | 193 /* 144 S> */ B(Ldar), R(0), |
221 /* 154 S> */ B(Return), | 194 /* 154 S> */ B(Return), |
222 ] | 195 ] |
223 constant pool: [ | 196 constant pool: [ |
224 ] | 197 ] |
225 handlers: [ | 198 handlers: [ |
226 ] | 199 ] |
227 | 200 |
228 --- | 201 --- |
229 snippet: " | 202 snippet: " |
230 var x = 10; | 203 var x = 10; |
231 var y = 1; | 204 var y = 1; |
232 while (x) { | 205 while (x) { |
233 y = y * 12; | 206 y = y * 12; |
234 x = x - 1; | 207 x = x - 1; |
235 } | 208 } |
236 return y; | 209 return y; |
237 " | 210 " |
238 frame size: 3 | 211 frame size: 2 |
239 parameter count: 1 | 212 parameter count: 1 |
240 bytecode array length: 39 | 213 bytecode array length: 31 |
241 bytecodes: [ | 214 bytecodes: [ |
242 /* 30 E> */ B(StackCheck), | 215 /* 30 E> */ B(StackCheck), |
243 /* 42 S> */ B(LdaSmi), U8(10), | 216 /* 42 S> */ B(LdaSmi), U8(10), |
244 /* 42 E> */ B(Star), R(0), | 217 /* 42 E> */ B(Star), R(0), |
245 /* 54 S> */ B(LdaSmi), U8(1), | 218 /* 54 S> */ B(LdaSmi), U8(1), |
246 /* 54 E> */ B(Star), R(1), | 219 /* 54 E> */ B(Star), R(1), |
247 /* 64 S> */ B(Ldar), R(0), | 220 /* 64 S> */ B(Ldar), R(0), |
248 B(JumpIfToBooleanFalse), U8(25), | 221 B(JumpIfToBooleanFalse), U8(17), |
249 /* 57 E> */ B(StackCheck), | 222 /* 57 E> */ B(StackCheck), |
250 /* 71 S> */ B(Ldar), R(1), | 223 /* 71 S> */ B(LdaSmi), U8(12), |
251 B(Star), R(2), | 224 B(Mul), R(1), |
252 B(LdaSmi), U8(12), | |
253 B(Mul), R(2), | |
254 /* 73 E> */ B(Star), R(1), | 225 /* 73 E> */ B(Star), R(1), |
255 /* 85 S> */ B(Ldar), R(0), | 226 /* 85 S> */ B(LdaSmi), U8(1), |
256 B(Star), R(2), | 227 B(Sub), R(0), |
257 B(LdaSmi), U8(1), | |
258 B(Sub), R(2), | |
259 /* 87 E> */ B(Star), R(0), | 228 /* 87 E> */ B(Star), R(0), |
260 B(Jump), U8(-25), | 229 B(Jump), U8(-17), |
261 /* 98 S> */ B(Ldar), R(1), | 230 /* 98 S> */ B(Ldar), R(1), |
262 /* 108 S> */ B(Return), | 231 /* 108 S> */ B(Return), |
263 ] | 232 ] |
264 constant pool: [ | 233 constant pool: [ |
265 ] | 234 ] |
266 handlers: [ | 235 handlers: [ |
267 ] | 236 ] |
268 | 237 |
269 --- | 238 --- |
270 snippet: " | 239 snippet: " |
271 var x = 0; var y = 1; | 240 var x = 0; var y = 1; |
272 do { | 241 do { |
273 y = y * 10; | 242 y = y * 10; |
274 if (x == 5) break; | 243 if (x == 5) break; |
275 if (x == 6) continue; | 244 if (x == 6) continue; |
276 x = x + 1; | 245 x = x + 1; |
277 } while (x < 10); | 246 } while (x < 10); |
278 return y; | 247 return y; |
279 " | 248 " |
280 frame size: 3 | 249 frame size: 2 |
281 parameter count: 1 | 250 parameter count: 1 |
282 bytecode array length: 66 | 251 bytecode array length: 46 |
283 bytecodes: [ | 252 bytecodes: [ |
284 /* 30 E> */ B(StackCheck), | 253 /* 30 E> */ B(StackCheck), |
285 /* 42 S> */ B(LdaZero), | 254 /* 42 S> */ B(LdaZero), |
286 /* 42 E> */ B(Star), R(0), | 255 /* 42 E> */ B(Star), R(0), |
287 /* 53 S> */ B(LdaSmi), U8(1), | 256 /* 53 S> */ B(LdaSmi), U8(1), |
288 /* 53 E> */ B(Star), R(1), | 257 /* 53 E> */ B(Star), R(1), |
289 /* 56 E> */ B(StackCheck), | 258 /* 56 E> */ B(StackCheck), |
290 /* 63 S> */ B(Ldar), R(1), | 259 /* 63 S> */ B(LdaSmi), U8(10), |
291 B(Star), R(2), | 260 B(Mul), R(1), |
292 B(LdaSmi), U8(10), | |
293 B(Mul), R(2), | |
294 /* 65 E> */ B(Star), R(1), | 261 /* 65 E> */ B(Star), R(1), |
295 /* 77 S> */ B(Ldar), R(0), | 262 /* 77 S> */ B(LdaSmi), U8(5), |
296 B(Star), R(2), | 263 /* 83 E> */ B(TestEqual), R(0), |
297 B(LdaSmi), U8(5), | |
298 /* 83 E> */ B(TestEqual), R(2), | |
299 B(JumpIfFalse), U8(4), | 264 B(JumpIfFalse), U8(4), |
300 /* 89 S> */ B(Jump), U8(34), | 265 /* 89 S> */ B(Jump), U8(22), |
301 /* 98 S> */ B(Ldar), R(0), | 266 /* 98 S> */ B(LdaSmi), U8(6), |
302 B(Star), R(2), | 267 /* 104 E> */ B(TestEqual), R(0), |
303 B(LdaSmi), U8(6), | |
304 /* 104 E> */ B(TestEqual), R(2), | |
305 B(JumpIfFalse), U8(4), | 268 B(JumpIfFalse), U8(4), |
306 /* 110 S> */ B(Jump), U8(12), | 269 /* 110 S> */ B(Jump), U8(8), |
307 /* 122 S> */ B(Ldar), R(0), | 270 /* 122 S> */ B(LdaSmi), U8(1), |
308 B(Star), R(2), | 271 B(Add), R(0), |
309 B(LdaSmi), U8(1), | |
310 B(Add), R(2), | |
311 /* 124 E> */ B(Star), R(0), | 272 /* 124 E> */ B(Star), R(0), |
312 /* 144 S> */ B(Ldar), R(0), | 273 /* 144 S> */ B(LdaSmi), U8(10), |
313 B(Star), R(2), | 274 /* 144 E> */ B(TestLessThan), R(0), |
314 B(LdaSmi), U8(10), | 275 B(JumpIfTrue), U8(-33), |
315 /* 144 E> */ B(TestLessThan), R(2), | |
316 B(JumpIfTrue), U8(-53), | |
317 /* 151 S> */ B(Ldar), R(1), | 276 /* 151 S> */ B(Ldar), R(1), |
318 /* 161 S> */ B(Return), | 277 /* 161 S> */ B(Return), |
319 ] | 278 ] |
320 constant pool: [ | 279 constant pool: [ |
321 ] | 280 ] |
322 handlers: [ | 281 handlers: [ |
323 ] | 282 ] |
324 | 283 |
325 --- | 284 --- |
326 snippet: " | 285 snippet: " |
327 var x = 10; | 286 var x = 10; |
328 var y = 1; | 287 var y = 1; |
329 do { | 288 do { |
330 y = y * 12; | 289 y = y * 12; |
331 x = x - 1; | 290 x = x - 1; |
332 } while (x); | 291 } while (x); |
333 return y; | 292 return y; |
334 " | 293 " |
335 frame size: 3 | 294 frame size: 2 |
336 parameter count: 1 | 295 parameter count: 1 |
337 bytecode array length: 37 | 296 bytecode array length: 29 |
338 bytecodes: [ | 297 bytecodes: [ |
339 /* 30 E> */ B(StackCheck), | 298 /* 30 E> */ B(StackCheck), |
340 /* 42 S> */ B(LdaSmi), U8(10), | 299 /* 42 S> */ B(LdaSmi), U8(10), |
341 /* 42 E> */ B(Star), R(0), | 300 /* 42 E> */ B(Star), R(0), |
342 /* 54 S> */ B(LdaSmi), U8(1), | 301 /* 54 S> */ B(LdaSmi), U8(1), |
343 /* 54 E> */ B(Star), R(1), | 302 /* 54 E> */ B(Star), R(1), |
344 /* 57 E> */ B(StackCheck), | 303 /* 57 E> */ B(StackCheck), |
345 /* 64 S> */ B(Ldar), R(1), | 304 /* 64 S> */ B(LdaSmi), U8(12), |
346 B(Star), R(2), | 305 B(Mul), R(1), |
347 B(LdaSmi), U8(12), | |
348 B(Mul), R(2), | |
349 /* 66 E> */ B(Star), R(1), | 306 /* 66 E> */ B(Star), R(1), |
350 /* 78 S> */ B(Ldar), R(0), | 307 /* 78 S> */ B(LdaSmi), U8(1), |
351 B(Star), R(2), | 308 B(Sub), R(0), |
352 B(LdaSmi), U8(1), | |
353 B(Sub), R(2), | |
354 /* 80 E> */ B(Star), R(0), | 309 /* 80 E> */ B(Star), R(0), |
355 /* 98 S> */ B(Ldar), R(0), | 310 /* 98 S> */ B(Ldar), R(0), |
356 B(JumpIfToBooleanTrue), U8(-23), | 311 B(JumpIfToBooleanTrue), U8(-15), |
357 /* 102 S> */ B(Ldar), R(1), | 312 /* 102 S> */ B(Ldar), R(1), |
358 /* 112 S> */ B(Return), | 313 /* 112 S> */ B(Return), |
359 ] | 314 ] |
360 constant pool: [ | 315 constant pool: [ |
361 ] | 316 ] |
362 handlers: [ | 317 handlers: [ |
363 ] | 318 ] |
364 | 319 |
365 --- | 320 --- |
366 snippet: " | 321 snippet: " |
367 var x = 0; var y = 1; | 322 var x = 0; var y = 1; |
368 do { | 323 do { |
369 y = y * 10; | 324 y = y * 10; |
370 if (x == 5) break; | 325 if (x == 5) break; |
371 x = x + 1; | 326 x = x + 1; |
372 if (x == 6) continue; | 327 if (x == 6) continue; |
373 } while (false); | 328 } while (false); |
374 return y; | 329 return y; |
375 " | 330 " |
376 frame size: 3 | 331 frame size: 2 |
377 parameter count: 1 | 332 parameter count: 1 |
378 bytecode array length: 54 | 333 bytecode array length: 40 |
379 bytecodes: [ | 334 bytecodes: [ |
380 /* 30 E> */ B(StackCheck), | 335 /* 30 E> */ B(StackCheck), |
381 /* 42 S> */ B(LdaZero), | 336 /* 42 S> */ B(LdaZero), |
382 /* 42 E> */ B(Star), R(0), | 337 /* 42 E> */ B(Star), R(0), |
383 /* 53 S> */ B(LdaSmi), U8(1), | 338 /* 53 S> */ B(LdaSmi), U8(1), |
384 /* 53 E> */ B(Star), R(1), | 339 /* 53 E> */ B(Star), R(1), |
385 /* 56 E> */ B(StackCheck), | 340 /* 56 E> */ B(StackCheck), |
386 /* 63 S> */ B(Ldar), R(1), | 341 /* 63 S> */ B(LdaSmi), U8(10), |
387 B(Star), R(2), | 342 B(Mul), R(1), |
388 B(LdaSmi), U8(10), | |
389 B(Mul), R(2), | |
390 /* 65 E> */ B(Star), R(1), | 343 /* 65 E> */ B(Star), R(1), |
391 /* 77 S> */ B(Ldar), R(0), | 344 /* 77 S> */ B(LdaSmi), U8(5), |
392 B(Star), R(2), | 345 /* 83 E> */ B(TestEqual), R(0), |
393 B(LdaSmi), U8(5), | |
394 /* 83 E> */ B(TestEqual), R(2), | |
395 B(JumpIfFalse), U8(4), | 346 B(JumpIfFalse), U8(4), |
396 /* 89 S> */ B(Jump), U8(22), | 347 /* 89 S> */ B(Jump), U8(16), |
397 /* 98 S> */ B(Ldar), R(0), | 348 /* 98 S> */ B(LdaSmi), U8(1), |
398 B(Star), R(2), | 349 B(Add), R(0), |
399 B(LdaSmi), U8(1), | |
400 B(Add), R(2), | |
401 /* 100 E> */ B(Star), R(0), | 350 /* 100 E> */ B(Star), R(0), |
402 /* 111 S> */ B(Star), R(2), | 351 /* 111 S> */ B(LdaSmi), U8(6), |
403 B(LdaSmi), U8(6), | 352 /* 117 E> */ B(TestEqual), R(0), |
404 /* 117 E> */ B(TestEqual), R(2), | |
405 B(JumpIfFalse), U8(4), | 353 B(JumpIfFalse), U8(4), |
406 /* 123 S> */ B(Jump), U8(2), | 354 /* 123 S> */ B(Jump), U8(2), |
407 /* 150 S> */ B(Ldar), R(1), | 355 /* 150 S> */ B(Ldar), R(1), |
408 /* 160 S> */ B(Return), | 356 /* 160 S> */ B(Return), |
409 ] | 357 ] |
410 constant pool: [ | 358 constant pool: [ |
411 ] | 359 ] |
412 handlers: [ | 360 handlers: [ |
413 ] | 361 ] |
414 | 362 |
415 --- | 363 --- |
416 snippet: " | 364 snippet: " |
417 var x = 0; var y = 1; | 365 var x = 0; var y = 1; |
418 do { | 366 do { |
419 y = y * 10; | 367 y = y * 10; |
420 if (x == 5) break; | 368 if (x == 5) break; |
421 x = x + 1; | 369 x = x + 1; |
422 if (x == 6) continue; | 370 if (x == 6) continue; |
423 } while (true); | 371 } while (true); |
424 return y; | 372 return y; |
425 " | 373 " |
426 frame size: 3 | 374 frame size: 2 |
427 parameter count: 1 | 375 parameter count: 1 |
428 bytecode array length: 56 | 376 bytecode array length: 42 |
429 bytecodes: [ | 377 bytecodes: [ |
430 /* 30 E> */ B(StackCheck), | 378 /* 30 E> */ B(StackCheck), |
431 /* 42 S> */ B(LdaZero), | 379 /* 42 S> */ B(LdaZero), |
432 /* 42 E> */ B(Star), R(0), | 380 /* 42 E> */ B(Star), R(0), |
433 /* 53 S> */ B(LdaSmi), U8(1), | 381 /* 53 S> */ B(LdaSmi), U8(1), |
434 /* 53 E> */ B(Star), R(1), | 382 /* 53 E> */ B(Star), R(1), |
435 /* 56 E> */ B(StackCheck), | 383 /* 56 E> */ B(StackCheck), |
436 /* 63 S> */ B(Ldar), R(1), | 384 /* 63 S> */ B(LdaSmi), U8(10), |
437 B(Star), R(2), | 385 B(Mul), R(1), |
438 B(LdaSmi), U8(10), | |
439 B(Mul), R(2), | |
440 /* 65 E> */ B(Star), R(1), | 386 /* 65 E> */ B(Star), R(1), |
441 /* 77 S> */ B(Ldar), R(0), | 387 /* 77 S> */ B(LdaSmi), U8(5), |
442 B(Star), R(2), | 388 /* 83 E> */ B(TestEqual), R(0), |
443 B(LdaSmi), U8(5), | |
444 /* 83 E> */ B(TestEqual), R(2), | |
445 B(JumpIfFalse), U8(4), | 389 B(JumpIfFalse), U8(4), |
446 /* 89 S> */ B(Jump), U8(24), | 390 /* 89 S> */ B(Jump), U8(18), |
447 /* 98 S> */ B(Ldar), R(0), | 391 /* 98 S> */ B(LdaSmi), U8(1), |
448 B(Star), R(2), | 392 B(Add), R(0), |
449 B(LdaSmi), U8(1), | |
450 B(Add), R(2), | |
451 /* 100 E> */ B(Star), R(0), | 393 /* 100 E> */ B(Star), R(0), |
452 /* 111 S> */ B(Star), R(2), | 394 /* 111 S> */ B(LdaSmi), U8(6), |
453 B(LdaSmi), U8(6), | 395 /* 117 E> */ B(TestEqual), R(0), |
454 /* 117 E> */ B(TestEqual), R(2), | |
455 B(JumpIfFalse), U8(4), | 396 B(JumpIfFalse), U8(4), |
456 /* 123 S> */ B(Jump), U8(2), | 397 /* 123 S> */ B(Jump), U8(2), |
457 B(Jump), U8(-43), | 398 B(Jump), U8(-29), |
458 /* 149 S> */ B(Ldar), R(1), | 399 /* 149 S> */ B(Ldar), R(1), |
459 /* 159 S> */ B(Return), | 400 /* 159 S> */ B(Return), |
460 ] | 401 ] |
461 constant pool: [ | 402 constant pool: [ |
462 ] | 403 ] |
463 handlers: [ | 404 handlers: [ |
464 ] | 405 ] |
465 | 406 |
466 --- | 407 --- |
467 snippet: " | 408 snippet: " |
468 var x = 0; | 409 var x = 0; |
469 for (;;) { | 410 for (;;) { |
470 if (x == 1) break; | 411 if (x == 1) break; |
471 if (x == 2) continue; | 412 if (x == 2) continue; |
472 x = x + 1; | 413 x = x + 1; |
473 } | 414 } |
474 " | 415 " |
475 frame size: 2 | 416 frame size: 1 |
476 parameter count: 1 | 417 parameter count: 1 |
477 bytecode array length: 43 | 418 bytecode array length: 31 |
478 bytecodes: [ | 419 bytecodes: [ |
479 /* 30 E> */ B(StackCheck), | 420 /* 30 E> */ B(StackCheck), |
480 /* 42 S> */ B(LdaZero), | 421 /* 42 S> */ B(LdaZero), |
481 /* 42 E> */ B(Star), R(0), | 422 /* 42 E> */ B(Star), R(0), |
482 /* 45 E> */ B(StackCheck), | 423 /* 45 E> */ B(StackCheck), |
483 /* 58 S> */ B(Ldar), R(0), | 424 /* 58 S> */ B(LdaSmi), U8(1), |
484 B(Star), R(1), | 425 /* 64 E> */ B(TestEqual), R(0), |
485 B(LdaSmi), U8(1), | |
486 /* 64 E> */ B(TestEqual), R(1), | |
487 B(JumpIfFalse), U8(4), | 426 B(JumpIfFalse), U8(4), |
488 /* 70 S> */ B(Jump), U8(26), | 427 /* 70 S> */ B(Jump), U8(18), |
489 /* 79 S> */ B(Ldar), R(0), | 428 /* 79 S> */ B(LdaSmi), U8(2), |
490 B(Star), R(1), | 429 /* 85 E> */ B(TestEqual), R(0), |
491 B(LdaSmi), U8(2), | |
492 /* 85 E> */ B(TestEqual), R(1), | |
493 B(JumpIfFalse), U8(4), | 430 B(JumpIfFalse), U8(4), |
494 /* 91 S> */ B(Jump), U8(12), | 431 /* 91 S> */ B(Jump), U8(8), |
495 /* 103 S> */ B(Ldar), R(0), | 432 /* 103 S> */ B(LdaSmi), U8(1), |
496 B(Star), R(1), | 433 B(Add), R(0), |
497 B(LdaSmi), U8(1), | |
498 B(Add), R(1), | |
499 /* 105 E> */ B(Star), R(0), | 434 /* 105 E> */ B(Star), R(0), |
500 B(Jump), U8(-35), | 435 B(Jump), U8(-23), |
501 B(LdaUndefined), | 436 B(LdaUndefined), |
502 /* 116 S> */ B(Return), | 437 /* 116 S> */ B(Return), |
503 ] | 438 ] |
504 constant pool: [ | 439 constant pool: [ |
505 ] | 440 ] |
506 handlers: [ | 441 handlers: [ |
507 ] | 442 ] |
508 | 443 |
509 --- | 444 --- |
510 snippet: " | 445 snippet: " |
511 for (var x = 0;;) { | 446 for (var x = 0;;) { |
512 if (x == 1) break; | 447 if (x == 1) break; |
513 if (x == 2) continue; | 448 if (x == 2) continue; |
514 x = x + 1; | 449 x = x + 1; |
515 } | 450 } |
516 " | 451 " |
517 frame size: 2 | 452 frame size: 1 |
518 parameter count: 1 | 453 parameter count: 1 |
519 bytecode array length: 43 | 454 bytecode array length: 31 |
520 bytecodes: [ | 455 bytecodes: [ |
521 /* 30 E> */ B(StackCheck), | 456 /* 30 E> */ B(StackCheck), |
522 /* 47 S> */ B(LdaZero), | 457 /* 47 S> */ B(LdaZero), |
523 /* 47 E> */ B(Star), R(0), | 458 /* 47 E> */ B(Star), R(0), |
524 /* 34 E> */ B(StackCheck), | 459 /* 34 E> */ B(StackCheck), |
525 /* 56 S> */ B(Ldar), R(0), | 460 /* 56 S> */ B(LdaSmi), U8(1), |
526 B(Star), R(1), | 461 /* 62 E> */ B(TestEqual), R(0), |
527 B(LdaSmi), U8(1), | |
528 /* 62 E> */ B(TestEqual), R(1), | |
529 B(JumpIfFalse), U8(4), | 462 B(JumpIfFalse), U8(4), |
530 /* 68 S> */ B(Jump), U8(26), | 463 /* 68 S> */ B(Jump), U8(18), |
531 /* 77 S> */ B(Ldar), R(0), | 464 /* 77 S> */ B(LdaSmi), U8(2), |
532 B(Star), R(1), | 465 /* 83 E> */ B(TestEqual), R(0), |
533 B(LdaSmi), U8(2), | |
534 /* 83 E> */ B(TestEqual), R(1), | |
535 B(JumpIfFalse), U8(4), | 466 B(JumpIfFalse), U8(4), |
536 /* 89 S> */ B(Jump), U8(12), | 467 /* 89 S> */ B(Jump), U8(8), |
537 /* 101 S> */ B(Ldar), R(0), | 468 /* 101 S> */ B(LdaSmi), U8(1), |
538 B(Star), R(1), | 469 B(Add), R(0), |
539 B(LdaSmi), U8(1), | |
540 B(Add), R(1), | |
541 /* 103 E> */ B(Star), R(0), | 470 /* 103 E> */ B(Star), R(0), |
542 B(Jump), U8(-35), | 471 B(Jump), U8(-23), |
543 B(LdaUndefined), | 472 B(LdaUndefined), |
544 /* 114 S> */ B(Return), | 473 /* 114 S> */ B(Return), |
545 ] | 474 ] |
546 constant pool: [ | 475 constant pool: [ |
547 ] | 476 ] |
548 handlers: [ | 477 handlers: [ |
549 ] | 478 ] |
550 | 479 |
551 --- | 480 --- |
552 snippet: " | 481 snippet: " |
553 var x = 0; | 482 var x = 0; |
554 for (;; x = x + 1) { | 483 for (;; x = x + 1) { |
555 if (x == 1) break; | 484 if (x == 1) break; |
556 if (x == 2) continue; | 485 if (x == 2) continue; |
557 } | 486 } |
558 " | 487 " |
559 frame size: 2 | 488 frame size: 1 |
560 parameter count: 1 | 489 parameter count: 1 |
561 bytecode array length: 43 | 490 bytecode array length: 31 |
562 bytecodes: [ | 491 bytecodes: [ |
563 /* 30 E> */ B(StackCheck), | 492 /* 30 E> */ B(StackCheck), |
564 /* 42 S> */ B(LdaZero), | 493 /* 42 S> */ B(LdaZero), |
565 /* 42 E> */ B(Star), R(0), | 494 /* 42 E> */ B(Star), R(0), |
566 /* 45 E> */ B(StackCheck), | 495 /* 45 E> */ B(StackCheck), |
567 /* 68 S> */ B(Ldar), R(0), | 496 /* 68 S> */ B(LdaSmi), U8(1), |
568 B(Star), R(1), | 497 /* 74 E> */ B(TestEqual), R(0), |
569 B(LdaSmi), U8(1), | |
570 /* 74 E> */ B(TestEqual), R(1), | |
571 B(JumpIfFalse), U8(4), | 498 B(JumpIfFalse), U8(4), |
572 /* 80 S> */ B(Jump), U8(26), | 499 /* 80 S> */ B(Jump), U8(18), |
573 /* 89 S> */ B(Ldar), R(0), | 500 /* 89 S> */ B(LdaSmi), U8(2), |
574 B(Star), R(1), | 501 /* 95 E> */ B(TestEqual), R(0), |
575 B(LdaSmi), U8(2), | |
576 /* 95 E> */ B(TestEqual), R(1), | |
577 B(JumpIfFalse), U8(4), | 502 B(JumpIfFalse), U8(4), |
578 /* 101 S> */ B(Jump), U8(2), | 503 /* 101 S> */ B(Jump), U8(2), |
579 /* 55 S> */ B(Ldar), R(0), | 504 /* 55 S> */ B(LdaSmi), U8(1), |
580 B(Star), R(1), | 505 B(Add), R(0), |
581 B(LdaSmi), U8(1), | |
582 B(Add), R(1), | |
583 /* 55 E> */ B(Star), R(0), | 506 /* 55 E> */ B(Star), R(0), |
584 B(Jump), U8(-35), | 507 B(Jump), U8(-23), |
585 B(LdaUndefined), | 508 B(LdaUndefined), |
586 /* 113 S> */ B(Return), | 509 /* 113 S> */ B(Return), |
587 ] | 510 ] |
588 constant pool: [ | 511 constant pool: [ |
589 ] | 512 ] |
590 handlers: [ | 513 handlers: [ |
591 ] | 514 ] |
592 | 515 |
593 --- | 516 --- |
594 snippet: " | 517 snippet: " |
595 for (var x = 0;; x = x + 1) { | 518 for (var x = 0;; x = x + 1) { |
596 if (x == 1) break; | 519 if (x == 1) break; |
597 if (x == 2) continue; | 520 if (x == 2) continue; |
598 } | 521 } |
599 " | 522 " |
600 frame size: 2 | 523 frame size: 1 |
601 parameter count: 1 | 524 parameter count: 1 |
602 bytecode array length: 43 | 525 bytecode array length: 31 |
603 bytecodes: [ | 526 bytecodes: [ |
604 /* 30 E> */ B(StackCheck), | 527 /* 30 E> */ B(StackCheck), |
605 /* 47 S> */ B(LdaZero), | 528 /* 47 S> */ B(LdaZero), |
606 /* 47 E> */ B(Star), R(0), | 529 /* 47 E> */ B(Star), R(0), |
607 /* 34 E> */ B(StackCheck), | 530 /* 34 E> */ B(StackCheck), |
608 /* 66 S> */ B(Ldar), R(0), | 531 /* 66 S> */ B(LdaSmi), U8(1), |
609 B(Star), R(1), | 532 /* 72 E> */ B(TestEqual), R(0), |
610 B(LdaSmi), U8(1), | |
611 /* 72 E> */ B(TestEqual), R(1), | |
612 B(JumpIfFalse), U8(4), | 533 B(JumpIfFalse), U8(4), |
613 /* 78 S> */ B(Jump), U8(26), | 534 /* 78 S> */ B(Jump), U8(18), |
614 /* 87 S> */ B(Ldar), R(0), | 535 /* 87 S> */ B(LdaSmi), U8(2), |
615 B(Star), R(1), | 536 /* 93 E> */ B(TestEqual), R(0), |
616 B(LdaSmi), U8(2), | |
617 /* 93 E> */ B(TestEqual), R(1), | |
618 B(JumpIfFalse), U8(4), | 537 B(JumpIfFalse), U8(4), |
619 /* 99 S> */ B(Jump), U8(2), | 538 /* 99 S> */ B(Jump), U8(2), |
620 /* 53 S> */ B(Ldar), R(0), | 539 /* 53 S> */ B(LdaSmi), U8(1), |
621 B(Star), R(1), | 540 B(Add), R(0), |
622 B(LdaSmi), U8(1), | |
623 B(Add), R(1), | |
624 /* 53 E> */ B(Star), R(0), | 541 /* 53 E> */ B(Star), R(0), |
625 B(Jump), U8(-35), | 542 B(Jump), U8(-23), |
626 B(LdaUndefined), | 543 B(LdaUndefined), |
627 /* 111 S> */ B(Return), | 544 /* 111 S> */ B(Return), |
628 ] | 545 ] |
629 constant pool: [ | 546 constant pool: [ |
630 ] | 547 ] |
631 handlers: [ | 548 handlers: [ |
632 ] | 549 ] |
633 | 550 |
634 --- | 551 --- |
635 snippet: " | 552 snippet: " |
636 var u = 0; | 553 var u = 0; |
637 for (var i = 0; i < 100; i = i + 1) { | 554 for (var i = 0; i < 100; i = i + 1) { |
638 u = u + 1; | 555 u = u + 1; |
639 continue; | 556 continue; |
640 } | 557 } |
641 " | 558 " |
642 frame size: 3 | 559 frame size: 2 |
643 parameter count: 1 | 560 parameter count: 1 |
644 bytecode array length: 44 | 561 bytecode array length: 32 |
645 bytecodes: [ | 562 bytecodes: [ |
646 /* 30 E> */ B(StackCheck), | 563 /* 30 E> */ B(StackCheck), |
647 /* 42 S> */ B(LdaZero), | 564 /* 42 S> */ B(LdaZero), |
648 /* 42 E> */ B(Star), R(0), | 565 /* 42 E> */ B(Star), R(0), |
649 /* 58 S> */ B(LdaZero), | 566 /* 58 S> */ B(LdaZero), |
650 /* 58 E> */ B(Star), R(1), | 567 /* 58 E> */ B(Star), R(1), |
651 /* 63 S> */ B(Ldar), R(1), | 568 /* 63 S> */ B(LdaSmi), U8(100), |
652 B(Star), R(2), | 569 /* 63 E> */ B(TestLessThan), R(1), |
653 B(LdaSmi), U8(100), | 570 B(JumpIfFalse), U8(19), |
654 /* 63 E> */ B(TestLessThan), R(2), | |
655 B(JumpIfFalse), U8(27), | |
656 /* 45 E> */ B(StackCheck), | 571 /* 45 E> */ B(StackCheck), |
657 /* 85 S> */ B(Ldar), R(0), | 572 /* 85 S> */ B(LdaSmi), U8(1), |
658 B(Star), R(2), | 573 B(Add), R(0), |
659 B(LdaSmi), U8(1), | |
660 B(Add), R(2), | |
661 /* 87 E> */ B(Star), R(0), | 574 /* 87 E> */ B(Star), R(0), |
662 /* 98 S> */ B(Jump), U8(2), | 575 /* 98 S> */ B(Jump), U8(2), |
663 /* 72 S> */ B(Ldar), R(1), | 576 /* 72 S> */ B(LdaSmi), U8(1), |
664 B(Star), R(2), | 577 B(Add), R(1), |
665 B(LdaSmi), U8(1), | |
666 B(Add), R(2), | |
667 /* 72 E> */ B(Star), R(1), | 578 /* 72 E> */ B(Star), R(1), |
668 B(Jump), U8(-33), | 579 B(Jump), U8(-21), |
669 B(LdaUndefined), | 580 B(LdaUndefined), |
670 /* 110 S> */ B(Return), | 581 /* 110 S> */ B(Return), |
671 ] | 582 ] |
672 constant pool: [ | 583 constant pool: [ |
673 ] | 584 ] |
674 handlers: [ | 585 handlers: [ |
675 ] | 586 ] |
676 | 587 |
677 --- | 588 --- |
678 snippet: " | 589 snippet: " |
679 var y = 1; | 590 var y = 1; |
680 for (var x = 10; x; --x) { | 591 for (var x = 10; x; --x) { |
681 y = y * 12; | 592 y = y * 12; |
682 } | 593 } |
683 return y; | 594 return y; |
684 " | 595 " |
685 frame size: 3 | 596 frame size: 2 |
686 parameter count: 1 | 597 parameter count: 1 |
687 bytecode array length: 34 | 598 bytecode array length: 30 |
688 bytecodes: [ | 599 bytecodes: [ |
689 /* 30 E> */ B(StackCheck), | 600 /* 30 E> */ B(StackCheck), |
690 /* 42 S> */ B(LdaSmi), U8(1), | 601 /* 42 S> */ B(LdaSmi), U8(1), |
691 /* 42 E> */ B(Star), R(0), | 602 /* 42 E> */ B(Star), R(0), |
692 /* 58 S> */ B(LdaSmi), U8(10), | 603 /* 58 S> */ B(LdaSmi), U8(10), |
693 /* 58 E> */ B(Star), R(1), | 604 /* 58 E> */ B(Star), R(1), |
694 /* 62 S> */ B(Ldar), R(1), | 605 /* 62 S> */ B(Ldar), R(1), |
695 B(JumpIfToBooleanFalse), U8(20), | 606 B(JumpIfToBooleanFalse), U8(16), |
696 /* 45 E> */ B(StackCheck), | 607 /* 45 E> */ B(StackCheck), |
697 /* 74 S> */ B(Ldar), R(0), | 608 /* 74 S> */ B(LdaSmi), U8(12), |
698 B(Star), R(2), | 609 B(Mul), R(0), |
699 B(LdaSmi), U8(12), | |
700 B(Mul), R(2), | |
701 /* 76 E> */ B(Star), R(0), | 610 /* 76 E> */ B(Star), R(0), |
702 /* 67 S> */ B(Ldar), R(1), | 611 /* 67 S> */ B(Ldar), R(1), |
703 B(Dec), | 612 B(Dec), |
704 /* 67 E> */ B(Star), R(1), | 613 /* 67 E> */ B(Star), R(1), |
705 B(Jump), U8(-20), | 614 B(Jump), U8(-16), |
706 /* 88 S> */ B(Ldar), R(0), | 615 /* 88 S> */ B(Ldar), R(0), |
707 /* 98 S> */ B(Return), | 616 /* 98 S> */ B(Return), |
708 ] | 617 ] |
709 constant pool: [ | 618 constant pool: [ |
710 ] | 619 ] |
711 handlers: [ | 620 handlers: [ |
712 ] | 621 ] |
713 | 622 |
714 --- | 623 --- |
715 snippet: " | 624 snippet: " |
(...skipping 22 matching lines...) Expand all Loading... |
738 | 647 |
739 --- | 648 --- |
740 snippet: " | 649 snippet: " |
741 var x = 0; | 650 var x = 0; |
742 for (var i = 0; true; ++i) { | 651 for (var i = 0; true; ++i) { |
743 x = x + 1; | 652 x = x + 1; |
744 if (x == 20) break; | 653 if (x == 20) break; |
745 }; | 654 }; |
746 return x; | 655 return x; |
747 " | 656 " |
748 frame size: 3 | 657 frame size: 2 |
749 parameter count: 1 | 658 parameter count: 1 |
750 bytecode array length: 38 | 659 bytecode array length: 32 |
751 bytecodes: [ | 660 bytecodes: [ |
752 /* 30 E> */ B(StackCheck), | 661 /* 30 E> */ B(StackCheck), |
753 /* 42 S> */ B(LdaZero), | 662 /* 42 S> */ B(LdaZero), |
754 /* 42 E> */ B(Star), R(0), | 663 /* 42 E> */ B(Star), R(0), |
755 /* 58 S> */ B(LdaZero), | 664 /* 58 S> */ B(LdaZero), |
756 /* 58 E> */ B(Star), R(1), | 665 /* 58 E> */ B(Star), R(1), |
757 /* 45 E> */ B(StackCheck), | 666 /* 45 E> */ B(StackCheck), |
758 /* 76 S> */ B(Ldar), R(0), | 667 /* 76 S> */ B(LdaSmi), U8(1), |
759 B(Star), R(2), | 668 B(Add), R(0), |
760 B(LdaSmi), U8(1), | |
761 B(Add), R(2), | |
762 /* 78 E> */ B(Star), R(0), | 669 /* 78 E> */ B(Star), R(0), |
763 /* 89 S> */ B(Star), R(2), | 670 /* 89 S> */ B(LdaSmi), U8(20), |
764 B(LdaSmi), U8(20), | 671 /* 95 E> */ B(TestEqual), R(0), |
765 /* 95 E> */ B(TestEqual), R(2), | |
766 B(JumpIfFalse), U8(4), | 672 B(JumpIfFalse), U8(4), |
767 /* 102 S> */ B(Jump), U8(9), | 673 /* 102 S> */ B(Jump), U8(9), |
768 /* 69 S> */ B(Ldar), R(1), | 674 /* 69 S> */ B(Ldar), R(1), |
769 B(Inc), | 675 B(Inc), |
770 /* 69 E> */ B(Star), R(1), | 676 /* 69 E> */ B(Star), R(1), |
771 B(Jump), U8(-26), | 677 B(Jump), U8(-20), |
772 /* 112 S> */ B(Ldar), R(0), | 678 /* 112 S> */ B(Ldar), R(0), |
773 /* 122 S> */ B(Return), | 679 /* 122 S> */ B(Return), |
774 ] | 680 ] |
775 constant pool: [ | 681 constant pool: [ |
776 ] | 682 ] |
777 handlers: [ | 683 handlers: [ |
778 ] | 684 ] |
779 | 685 |
780 --- | 686 --- |
781 snippet: " | 687 snippet: " |
782 var a = 0; | 688 var a = 0; |
783 while (a) { | 689 while (a) { |
784 { | 690 { |
785 let z = 1; | 691 let z = 1; |
786 function f() { z = 2; } | 692 function f() { z = 2; } |
787 if (z) continue; | 693 if (z) continue; |
788 z++; | 694 z++; |
789 } | 695 } |
790 } | 696 } |
791 " | 697 " |
792 frame size: 7 | 698 frame size: 7 |
793 parameter count: 1 | 699 parameter count: 1 |
794 bytecode array length: 120 | 700 bytecode array length: 119 |
795 bytecodes: [ | 701 bytecodes: [ |
796 /* 30 E> */ B(StackCheck), | 702 /* 30 E> */ B(StackCheck), |
797 /* 42 S> */ B(LdaZero), | 703 /* 42 S> */ B(LdaZero), |
798 /* 42 E> */ B(Star), R(1), | 704 /* 42 E> */ B(Star), R(1), |
799 /* 52 S> */ B(Ldar), R(1), | 705 /* 52 S> */ B(Ldar), R(1), |
800 B(JumpIfToBooleanFalse), U8(112), | 706 B(JumpIfToBooleanFalse), U8(111), |
801 /* 45 E> */ B(StackCheck), | 707 /* 45 E> */ B(StackCheck), |
802 B(LdaConstant), U8(0), | 708 B(LdaConstant), U8(0), |
803 B(Star), R(4), | 709 B(Star), R(4), |
804 B(Ldar), R(closure), | 710 B(Mov), R(closure), R(5), |
805 B(Star), R(5), | |
806 B(CallRuntime), U16(Runtime::kPushBlockContext), R(4), U8(2), | 711 B(CallRuntime), U16(Runtime::kPushBlockContext), R(4), U8(2), |
807 B(PushContext), R(3), | 712 B(PushContext), R(3), |
808 B(LdaTheHole), | 713 B(LdaTheHole), |
809 B(StaContextSlot), R(context), U8(4), | 714 B(StaContextSlot), R(context), U8(4), |
810 B(CreateClosure), U8(1), U8(0), | 715 B(CreateClosure), U8(1), U8(0), |
811 B(Star), R(0), | 716 B(Star), R(0), |
812 /* 73 S> */ B(LdaSmi), U8(1), | 717 /* 73 S> */ B(LdaSmi), U8(1), |
813 /* 73 E> */ B(StaContextSlot), R(context), U8(4), | 718 /* 73 E> */ B(StaContextSlot), R(context), U8(4), |
814 B(Ldar), R(0), | 719 B(Ldar), R(0), |
815 B(JumpIfNotHole), U8(11), | 720 B(JumpIfNotHole), U8(11), |
(...skipping 20 matching lines...) Expand all Loading... |
836 B(Inc), | 741 B(Inc), |
837 /* 127 E> */ B(Star), R(5), | 742 /* 127 E> */ B(Star), R(5), |
838 B(LdaContextSlot), R(context), U8(4), | 743 B(LdaContextSlot), R(context), U8(4), |
839 B(JumpIfNotHole), U8(11), | 744 B(JumpIfNotHole), U8(11), |
840 B(LdaConstant), U8(3), | 745 B(LdaConstant), U8(3), |
841 B(Star), R(6), | 746 B(Star), R(6), |
842 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(6), U8(1), | 747 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(6), U8(1), |
843 B(Ldar), R(5), | 748 B(Ldar), R(5), |
844 B(StaContextSlot), R(context), U8(4), | 749 B(StaContextSlot), R(context), U8(4), |
845 B(PopContext), R(3), | 750 B(PopContext), R(3), |
846 B(Jump), U8(-112), | 751 B(Jump), U8(-111), |
847 B(LdaUndefined), | 752 B(LdaUndefined), |
848 /* 137 S> */ B(Return), | 753 /* 137 S> */ B(Return), |
849 ] | 754 ] |
850 constant pool: [ | 755 constant pool: [ |
851 InstanceType::FIXED_ARRAY_TYPE, | 756 InstanceType::FIXED_ARRAY_TYPE, |
852 InstanceType::SHARED_FUNCTION_INFO_TYPE, | 757 InstanceType::SHARED_FUNCTION_INFO_TYPE, |
853 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 758 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
854 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, | 759 InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
855 ] | 760 ] |
856 handlers: [ | 761 handlers: [ |
857 ] | 762 ] |
858 | 763 |
OLD | NEW |