Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(195)

Side by Side Diff: test/cctest/interpreter/bytecode_expectations/BasicLoops.golden

Issue 2331033002: [interpreter] Merge {OsrPoll} with {Jump} bytecode. (Closed)
Patch Set: One more test. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # 1 #
2 # Autogenerated by generate-bytecode-expectations. 2 # Autogenerated by generate-bytecode-expectations.
3 # 3 #
4 4
5 --- 5 ---
6 execute: yes 6 execute: yes
7 wrap: yes 7 wrap: yes
8 8
9 --- 9 ---
10 snippet: " 10 snippet: "
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 while (x < 10) { 57 while (x < 10) {
58 y = y * 12; 58 y = y * 12;
59 x = x + 1; 59 x = x + 1;
60 if (x == 3) continue; 60 if (x == 3) continue;
61 if (x == 4) break; 61 if (x == 4) break;
62 } 62 }
63 return y; 63 return y;
64 " 64 "
65 frame size: 2 65 frame size: 2
66 parameter count: 1 66 parameter count: 1
67 bytecode array length: 52 67 bytecode array length: 53
68 bytecodes: [ 68 bytecodes: [
69 /* 30 E> */ B(StackCheck), 69 /* 30 E> */ B(StackCheck),
70 /* 42 S> */ B(LdaZero), 70 /* 42 S> */ B(LdaZero),
71 B(Star), R(0), 71 B(Star), R(0),
72 /* 53 S> */ B(LdaSmi), U8(1), 72 /* 53 S> */ B(LdaSmi), U8(1),
73 B(Star), R(1), 73 B(Star), R(1),
74 /* 65 S> */ B(LdaSmi), U8(10), 74 /* 65 S> */ B(LdaSmi), U8(10),
75 /* 65 E> */ B(TestLessThan), R(0), U8(1), 75 /* 65 E> */ B(TestLessThan), R(0), U8(1),
76 B(JumpIfFalse), U8(36), 76 B(JumpIfFalse), U8(37),
77 /* 56 E> */ B(StackCheck), 77 /* 56 E> */ B(StackCheck),
78 /* 75 S> */ B(LdaSmi), U8(12), 78 /* 75 S> */ B(LdaSmi), U8(12),
79 B(Mul), R(1), U8(2), 79 B(Mul), R(1), U8(2),
80 B(Star), R(1), 80 B(Star), R(1),
81 /* 89 S> */ B(AddSmi), U8(1), R(0), U8(3), 81 /* 89 S> */ B(AddSmi), U8(1), R(0), U8(3),
82 B(Star), R(0), 82 B(Star), R(0),
83 /* 102 S> */ B(LdaSmi), U8(3), 83 /* 102 S> */ B(LdaSmi), U8(3),
84 /* 108 E> */ B(TestEqual), R(0), U8(4), 84 /* 108 E> */ B(TestEqual), R(0), U8(4),
85 B(JumpIfFalse), U8(4), 85 B(JumpIfFalse), U8(4),
86 /* 114 S> */ B(Jump), U8(11), 86 /* 114 S> */ B(Jump), U8(11),
87 /* 126 S> */ B(LdaSmi), U8(4), 87 /* 126 S> */ B(LdaSmi), U8(4),
88 /* 132 E> */ B(TestEqual), R(0), U8(5), 88 /* 132 E> */ B(TestEqual), R(0), U8(5),
89 B(JumpIfFalse), U8(4), 89 B(JumpIfFalse), U8(4),
90 /* 138 S> */ B(Jump), U8(4), 90 /* 138 S> */ B(Jump), U8(5),
91 B(Jump), U8(-39), 91 B(JumpLoop), U8(-39), U8(0),
92 /* 147 S> */ B(Ldar), R(1), 92 /* 147 S> */ B(Ldar), R(1),
93 /* 157 S> */ B(Return), 93 /* 157 S> */ B(Return),
94 ] 94 ]
95 constant pool: [ 95 constant pool: [
96 ] 96 ]
97 handlers: [ 97 handlers: [
98 ] 98 ]
99 99
100 --- 100 ---
101 snippet: " 101 snippet: "
102 var i = 0; 102 var i = 0;
103 while (true) { 103 while (true) {
104 if (i < 0) continue; 104 if (i < 0) continue;
105 if (i == 3) break; 105 if (i == 3) break;
106 if (i == 4) break; 106 if (i == 4) break;
107 if (i == 10) continue; 107 if (i == 10) continue;
108 if (i == 5) break; 108 if (i == 5) break;
109 i = i + 1; 109 i = i + 1;
110 } 110 }
111 return i; 111 return i;
112 " 112 "
113 frame size: 1 113 frame size: 1
114 parameter count: 1 114 parameter count: 1
115 bytecode array length: 60 115 bytecode array length: 61
116 bytecodes: [ 116 bytecodes: [
117 /* 30 E> */ B(StackCheck), 117 /* 30 E> */ B(StackCheck),
118 /* 42 S> */ B(LdaZero), 118 /* 42 S> */ B(LdaZero),
119 B(Star), R(0), 119 B(Star), R(0),
120 /* 45 E> */ B(StackCheck), 120 /* 45 E> */ B(StackCheck),
121 /* 62 S> */ B(LdaZero), 121 /* 62 S> */ B(LdaZero),
122 /* 68 E> */ B(TestLessThan), R(0), U8(1), 122 /* 68 E> */ B(TestLessThan), R(0), U8(1),
123 B(JumpIfFalse), U8(4), 123 B(JumpIfFalse), U8(4),
124 /* 73 S> */ B(Jump), U8(44), 124 /* 73 S> */ B(Jump), U8(44),
125 /* 85 S> */ B(LdaSmi), U8(3), 125 /* 85 S> */ B(LdaSmi), U8(3),
126 /* 91 E> */ B(TestEqual), R(0), U8(2), 126 /* 91 E> */ B(TestEqual), R(0), U8(2),
127 B(JumpIfFalse), U8(4), 127 B(JumpIfFalse), U8(4),
128 /* 97 S> */ B(Jump), U8(37), 128 /* 97 S> */ B(Jump), U8(38),
129 /* 106 S> */ B(LdaSmi), U8(4), 129 /* 106 S> */ B(LdaSmi), U8(4),
130 /* 112 E> */ B(TestEqual), R(0), U8(3), 130 /* 112 E> */ B(TestEqual), R(0), U8(3),
131 B(JumpIfFalse), U8(4), 131 B(JumpIfFalse), U8(4),
132 /* 118 S> */ B(Jump), U8(28), 132 /* 118 S> */ B(Jump), U8(29),
133 /* 127 S> */ B(LdaSmi), U8(10), 133 /* 127 S> */ B(LdaSmi), U8(10),
134 /* 133 E> */ B(TestEqual), R(0), U8(4), 134 /* 133 E> */ B(TestEqual), R(0), U8(4),
135 B(JumpIfFalse), U8(4), 135 B(JumpIfFalse), U8(4),
136 /* 140 S> */ B(Jump), U8(17), 136 /* 140 S> */ B(Jump), U8(17),
137 /* 152 S> */ B(LdaSmi), U8(5), 137 /* 152 S> */ B(LdaSmi), U8(5),
138 /* 158 E> */ B(TestEqual), R(0), U8(5), 138 /* 158 E> */ B(TestEqual), R(0), U8(5),
139 B(JumpIfFalse), U8(4), 139 B(JumpIfFalse), U8(4),
140 /* 164 S> */ B(Jump), U8(10), 140 /* 164 S> */ B(Jump), U8(11),
141 /* 173 S> */ B(AddSmi), U8(1), R(0), U8(6), 141 /* 173 S> */ B(AddSmi), U8(1), R(0), U8(6),
142 B(Star), R(0), 142 B(Star), R(0),
143 B(Jump), U8(-51), 143 B(JumpLoop), U8(-51), U8(0),
144 /* 186 S> */ B(Ldar), R(0), 144 /* 186 S> */ B(Ldar), R(0),
145 /* 196 S> */ B(Return), 145 /* 196 S> */ B(Return),
146 ] 146 ]
147 constant pool: [ 147 constant pool: [
148 ] 148 ]
149 handlers: [ 149 handlers: [
150 ] 150 ]
151 151
152 --- 152 ---
153 snippet: " 153 snippet: "
154 var i = 0; 154 var i = 0;
155 while (true) { 155 while (true) {
156 while (i < 3) { 156 while (i < 3) {
157 if (i == 2) break; 157 if (i == 2) break;
158 i = i + 1; 158 i = i + 1;
159 } 159 }
160 i = i + 1; 160 i = i + 1;
161 break; 161 break;
162 } 162 }
163 return i; 163 return i;
164 " 164 "
165 frame size: 1 165 frame size: 1
166 parameter count: 1 166 parameter count: 1
167 bytecode array length: 41 167 bytecode array length: 42
168 bytecodes: [ 168 bytecodes: [
169 /* 30 E> */ B(StackCheck), 169 /* 30 E> */ B(StackCheck),
170 /* 42 S> */ B(LdaZero), 170 /* 42 S> */ B(LdaZero),
171 B(Star), R(0), 171 B(Star), R(0),
172 /* 45 E> */ B(StackCheck), 172 /* 45 E> */ B(StackCheck),
173 /* 71 S> */ B(LdaSmi), U8(3), 173 /* 71 S> */ B(LdaSmi), U8(3),
174 /* 71 E> */ B(TestLessThan), R(0), U8(1), 174 /* 71 E> */ B(TestLessThan), R(0), U8(1),
175 B(JumpIfFalse), U8(20), 175 B(JumpIfFalse), U8(21),
176 /* 62 E> */ B(StackCheck), 176 /* 62 E> */ B(StackCheck),
177 /* 82 S> */ B(LdaSmi), U8(2), 177 /* 82 S> */ B(LdaSmi), U8(2),
178 /* 88 E> */ B(TestEqual), R(0), U8(2), 178 /* 88 E> */ B(TestEqual), R(0), U8(2),
179 B(JumpIfFalse), U8(4), 179 B(JumpIfFalse), U8(4),
180 /* 94 S> */ B(Jump), U8(10), 180 /* 94 S> */ B(Jump), U8(11),
181 /* 105 S> */ B(AddSmi), U8(1), R(0), U8(3), 181 /* 105 S> */ B(AddSmi), U8(1), R(0), U8(3),
182 B(Star), R(0), 182 B(Star), R(0),
183 B(Jump), U8(-23), 183 B(JumpLoop), U8(-23), U8(1),
184 /* 122 S> */ B(AddSmi), U8(1), R(0), U8(4), 184 /* 122 S> */ B(AddSmi), U8(1), R(0), U8(4),
185 B(Star), R(0), 185 B(Star), R(0),
186 /* 135 S> */ B(Jump), U8(2), 186 /* 135 S> */ B(Jump), U8(2),
187 /* 144 S> */ B(Ldar), R(0), 187 /* 144 S> */ B(Ldar), R(0),
188 /* 154 S> */ B(Return), 188 /* 154 S> */ B(Return),
189 ] 189 ]
190 constant pool: [ 190 constant pool: [
191 ] 191 ]
192 handlers: [ 192 handlers: [
193 ] 193 ]
194 194
195 --- 195 ---
196 snippet: " 196 snippet: "
197 var x = 10; 197 var x = 10;
198 var y = 1; 198 var y = 1;
199 while (x) { 199 while (x) {
200 y = y * 12; 200 y = y * 12;
201 x = x - 1; 201 x = x - 1;
202 } 202 }
203 return y; 203 return y;
204 " 204 "
205 frame size: 2 205 frame size: 2
206 parameter count: 1 206 parameter count: 1
207 bytecode array length: 32 207 bytecode array length: 33
208 bytecodes: [ 208 bytecodes: [
209 /* 30 E> */ B(StackCheck), 209 /* 30 E> */ B(StackCheck),
210 /* 42 S> */ B(LdaSmi), U8(10), 210 /* 42 S> */ B(LdaSmi), U8(10),
211 B(Star), R(0), 211 B(Star), R(0),
212 /* 54 S> */ B(LdaSmi), U8(1), 212 /* 54 S> */ B(LdaSmi), U8(1),
213 B(Star), R(1), 213 B(Star), R(1),
214 /* 64 S> */ B(Ldar), R(0), 214 /* 64 S> */ B(Ldar), R(0),
215 B(JumpIfToBooleanFalse), U8(18), 215 B(JumpIfToBooleanFalse), U8(19),
216 /* 57 E> */ B(StackCheck), 216 /* 57 E> */ B(StackCheck),
217 /* 71 S> */ B(LdaSmi), U8(12), 217 /* 71 S> */ B(LdaSmi), U8(12),
218 B(Mul), R(1), U8(1), 218 B(Mul), R(1), U8(1),
219 B(Star), R(1), 219 B(Star), R(1),
220 /* 85 S> */ B(SubSmi), U8(1), R(0), U8(2), 220 /* 85 S> */ B(SubSmi), U8(1), R(0), U8(2),
221 B(Star), R(0), 221 B(Star), R(0),
222 B(Jump), U8(-18), 222 B(JumpLoop), U8(-18), U8(0),
223 /* 98 S> */ B(Ldar), R(1), 223 /* 98 S> */ B(Ldar), R(1),
224 /* 108 S> */ B(Return), 224 /* 108 S> */ B(Return),
225 ] 225 ]
226 constant pool: [ 226 constant pool: [
227 ] 227 ]
228 handlers: [ 228 handlers: [
229 ] 229 ]
230 230
231 --- 231 ---
232 snippet: " 232 snippet: "
233 var x = 0; var y = 1; 233 var x = 0; var y = 1;
234 do { 234 do {
235 y = y * 10; 235 y = y * 10;
236 if (x == 5) break; 236 if (x == 5) break;
237 if (x == 6) continue; 237 if (x == 6) continue;
238 x = x + 1; 238 x = x + 1;
239 } while (x < 10); 239 } while (x < 10);
240 return y; 240 return y;
241 " 241 "
242 frame size: 2 242 frame size: 2
243 parameter count: 1 243 parameter count: 1
244 bytecode array length: 50 244 bytecode array length: 53
245 bytecodes: [ 245 bytecodes: [
246 /* 30 E> */ B(StackCheck), 246 /* 30 E> */ B(StackCheck),
247 /* 42 S> */ B(LdaZero), 247 /* 42 S> */ B(LdaZero),
248 B(Star), R(0), 248 B(Star), R(0),
249 /* 53 S> */ B(LdaSmi), U8(1), 249 /* 53 S> */ B(LdaSmi), U8(1),
250 B(Star), R(1), 250 B(Star), R(1),
251 /* 56 E> */ B(StackCheck), 251 /* 56 E> */ B(StackCheck),
252 /* 63 S> */ B(LdaSmi), U8(10), 252 /* 63 S> */ B(LdaSmi), U8(10),
253 B(Mul), R(1), U8(1), 253 B(Mul), R(1), U8(1),
254 B(Star), R(1), 254 B(Star), R(1),
255 /* 77 S> */ B(LdaSmi), U8(5), 255 /* 77 S> */ B(LdaSmi), U8(5),
256 /* 83 E> */ B(TestEqual), R(0), U8(2), 256 /* 83 E> */ B(TestEqual), R(0), U8(2),
257 B(JumpIfFalse), U8(4), 257 B(JumpIfFalse), U8(4),
258 /* 89 S> */ B(Jump), U8(24), 258 /* 89 S> */ B(Jump), U8(27),
259 /* 98 S> */ B(LdaSmi), U8(6), 259 /* 98 S> */ B(LdaSmi), U8(6),
260 /* 104 E> */ B(TestEqual), R(0), U8(3), 260 /* 104 E> */ B(TestEqual), R(0), U8(3),
261 B(JumpIfFalse), U8(4), 261 B(JumpIfFalse), U8(4),
262 /* 110 S> */ B(Jump), U8(8), 262 /* 110 S> */ B(Jump), U8(8),
263 /* 122 S> */ B(AddSmi), U8(1), R(0), U8(4), 263 /* 122 S> */ B(AddSmi), U8(1), R(0), U8(4),
264 B(Star), R(0), 264 B(Star), R(0),
265 /* 144 S> */ B(LdaSmi), U8(10), 265 /* 144 S> */ B(LdaSmi), U8(10),
266 /* 144 E> */ B(TestLessThan), R(0), U8(5), 266 /* 144 E> */ B(TestLessThan), R(0), U8(5),
267 B(JumpIfTrue), U8(-37), 267 B(JumpIfFalse), U8(5),
268 B(JumpLoop), U8(-39), U8(0),
268 /* 151 S> */ B(Ldar), R(1), 269 /* 151 S> */ B(Ldar), R(1),
269 /* 161 S> */ B(Return), 270 /* 161 S> */ B(Return),
270 ] 271 ]
271 constant pool: [ 272 constant pool: [
272 ] 273 ]
273 handlers: [ 274 handlers: [
274 ] 275 ]
275 276
276 --- 277 ---
277 snippet: " 278 snippet: "
278 var x = 10; 279 var x = 10;
279 var y = 1; 280 var y = 1;
280 do { 281 do {
281 y = y * 12; 282 y = y * 12;
282 x = x - 1; 283 x = x - 1;
283 } while (x); 284 } while (x);
284 return y; 285 return y;
285 " 286 "
286 frame size: 2 287 frame size: 2
287 parameter count: 1 288 parameter count: 1
288 bytecode array length: 28 289 bytecode array length: 31
289 bytecodes: [ 290 bytecodes: [
290 /* 30 E> */ B(StackCheck), 291 /* 30 E> */ B(StackCheck),
291 /* 42 S> */ B(LdaSmi), U8(10), 292 /* 42 S> */ B(LdaSmi), U8(10),
292 B(Star), R(0), 293 B(Star), R(0),
293 /* 54 S> */ B(LdaSmi), U8(1), 294 /* 54 S> */ B(LdaSmi), U8(1),
294 B(Star), R(1), 295 B(Star), R(1),
295 /* 57 E> */ B(StackCheck), 296 /* 57 E> */ B(StackCheck),
296 /* 64 S> */ B(LdaSmi), U8(12), 297 /* 64 S> */ B(LdaSmi), U8(12),
297 B(Mul), R(1), U8(1), 298 B(Mul), R(1), U8(1),
298 B(Star), R(1), 299 B(Star), R(1),
299 /* 78 S> */ B(SubSmi), U8(1), R(0), U8(2), 300 /* 78 S> */ B(SubSmi), U8(1), R(0), U8(2),
300 B(Star), R(0), 301 B(Star), R(0),
301 /* 98 S> */ B(JumpIfToBooleanTrue), U8(-14), 302 /* 98 S> */ B(JumpIfToBooleanFalse), U8(5),
303 B(JumpLoop), U8(-16), U8(0),
302 /* 102 S> */ B(Ldar), R(1), 304 /* 102 S> */ B(Ldar), R(1),
303 /* 112 S> */ B(Return), 305 /* 112 S> */ B(Return),
304 ] 306 ]
305 constant pool: [ 307 constant pool: [
306 ] 308 ]
307 handlers: [ 309 handlers: [
308 ] 310 ]
309 311
310 --- 312 ---
311 snippet: " 313 snippet: "
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 do { 357 do {
356 y = y * 10; 358 y = y * 10;
357 if (x == 5) break; 359 if (x == 5) break;
358 x = x + 1; 360 x = x + 1;
359 if (x == 6) continue; 361 if (x == 6) continue;
360 } while (true); 362 } while (true);
361 return y; 363 return y;
362 " 364 "
363 frame size: 2 365 frame size: 2
364 parameter count: 1 366 parameter count: 1
365 bytecode array length: 45 367 bytecode array length: 46
366 bytecodes: [ 368 bytecodes: [
367 /* 30 E> */ B(StackCheck), 369 /* 30 E> */ B(StackCheck),
368 /* 42 S> */ B(LdaZero), 370 /* 42 S> */ B(LdaZero),
369 B(Star), R(0), 371 B(Star), R(0),
370 /* 53 S> */ B(LdaSmi), U8(1), 372 /* 53 S> */ B(LdaSmi), U8(1),
371 B(Star), R(1), 373 B(Star), R(1),
372 /* 56 E> */ B(StackCheck), 374 /* 56 E> */ B(StackCheck),
373 /* 63 S> */ B(LdaSmi), U8(10), 375 /* 63 S> */ B(LdaSmi), U8(10),
374 B(Mul), R(1), U8(1), 376 B(Mul), R(1), U8(1),
375 B(Star), R(1), 377 B(Star), R(1),
376 /* 77 S> */ B(LdaSmi), U8(5), 378 /* 77 S> */ B(LdaSmi), U8(5),
377 /* 83 E> */ B(TestEqual), R(0), U8(2), 379 /* 83 E> */ B(TestEqual), R(0), U8(2),
378 B(JumpIfFalse), U8(4), 380 B(JumpIfFalse), U8(4),
379 /* 89 S> */ B(Jump), U8(19), 381 /* 89 S> */ B(Jump), U8(20),
380 /* 98 S> */ B(AddSmi), U8(1), R(0), U8(3), 382 /* 98 S> */ B(AddSmi), U8(1), R(0), U8(3),
381 B(Star), R(0), 383 B(Star), R(0),
382 /* 111 S> */ B(LdaSmi), U8(6), 384 /* 111 S> */ B(LdaSmi), U8(6),
383 /* 117 E> */ B(TestEqual), R(0), U8(4), 385 /* 117 E> */ B(TestEqual), R(0), U8(4),
384 B(JumpIfFalse), U8(4), 386 B(JumpIfFalse), U8(4),
385 /* 123 S> */ B(Jump), U8(2), 387 /* 123 S> */ B(Jump), U8(2),
386 B(Jump), U8(-32), 388 B(JumpLoop), U8(-32), U8(0),
387 /* 149 S> */ B(Ldar), R(1), 389 /* 149 S> */ B(Ldar), R(1),
388 /* 159 S> */ B(Return), 390 /* 159 S> */ B(Return),
389 ] 391 ]
390 constant pool: [ 392 constant pool: [
391 ] 393 ]
392 handlers: [ 394 handlers: [
393 ] 395 ]
394 396
395 --- 397 ---
396 snippet: " 398 snippet: "
397 var x = 0; 399 var x = 0;
398 for (;;) { 400 for (;;) {
399 if (x == 1) break; 401 if (x == 1) break;
400 if (x == 2) continue; 402 if (x == 2) continue;
401 x = x + 1; 403 x = x + 1;
402 } 404 }
403 " 405 "
404 frame size: 1 406 frame size: 1
405 parameter count: 1 407 parameter count: 1
406 bytecode array length: 33 408 bytecode array length: 34
407 bytecodes: [ 409 bytecodes: [
408 /* 30 E> */ B(StackCheck), 410 /* 30 E> */ B(StackCheck),
409 /* 42 S> */ B(LdaZero), 411 /* 42 S> */ B(LdaZero),
410 B(Star), R(0), 412 B(Star), R(0),
411 /* 45 E> */ B(StackCheck), 413 /* 45 E> */ B(StackCheck),
412 /* 58 S> */ B(LdaSmi), U8(1), 414 /* 58 S> */ B(LdaSmi), U8(1),
413 /* 64 E> */ B(TestEqual), R(0), U8(1), 415 /* 64 E> */ B(TestEqual), R(0), U8(1),
414 B(JumpIfFalse), U8(4), 416 B(JumpIfFalse), U8(4),
415 /* 70 S> */ B(Jump), U8(19), 417 /* 70 S> */ B(Jump), U8(20),
416 /* 79 S> */ B(LdaSmi), U8(2), 418 /* 79 S> */ B(LdaSmi), U8(2),
417 /* 85 E> */ B(TestEqual), R(0), U8(2), 419 /* 85 E> */ B(TestEqual), R(0), U8(2),
418 B(JumpIfFalse), U8(4), 420 B(JumpIfFalse), U8(4),
419 /* 91 S> */ B(Jump), U8(8), 421 /* 91 S> */ B(Jump), U8(8),
420 /* 103 S> */ B(AddSmi), U8(1), R(0), U8(3), 422 /* 103 S> */ B(AddSmi), U8(1), R(0), U8(3),
421 B(Star), R(0), 423 B(Star), R(0),
422 B(Jump), U8(-25), 424 B(JumpLoop), U8(-25), U8(0),
423 B(LdaUndefined), 425 B(LdaUndefined),
424 /* 116 S> */ B(Return), 426 /* 116 S> */ B(Return),
425 ] 427 ]
426 constant pool: [ 428 constant pool: [
427 ] 429 ]
428 handlers: [ 430 handlers: [
429 ] 431 ]
430 432
431 --- 433 ---
432 snippet: " 434 snippet: "
433 for (var x = 0;;) { 435 for (var x = 0;;) {
434 if (x == 1) break; 436 if (x == 1) break;
435 if (x == 2) continue; 437 if (x == 2) continue;
436 x = x + 1; 438 x = x + 1;
437 } 439 }
438 " 440 "
439 frame size: 1 441 frame size: 1
440 parameter count: 1 442 parameter count: 1
441 bytecode array length: 33 443 bytecode array length: 34
442 bytecodes: [ 444 bytecodes: [
443 /* 30 E> */ B(StackCheck), 445 /* 30 E> */ B(StackCheck),
444 /* 47 S> */ B(LdaZero), 446 /* 47 S> */ B(LdaZero),
445 B(Star), R(0), 447 B(Star), R(0),
446 /* 34 E> */ B(StackCheck), 448 /* 34 E> */ B(StackCheck),
447 /* 56 S> */ B(LdaSmi), U8(1), 449 /* 56 S> */ B(LdaSmi), U8(1),
448 /* 62 E> */ B(TestEqual), R(0), U8(1), 450 /* 62 E> */ B(TestEqual), R(0), U8(1),
449 B(JumpIfFalse), U8(4), 451 B(JumpIfFalse), U8(4),
450 /* 68 S> */ B(Jump), U8(19), 452 /* 68 S> */ B(Jump), U8(20),
451 /* 77 S> */ B(LdaSmi), U8(2), 453 /* 77 S> */ B(LdaSmi), U8(2),
452 /* 83 E> */ B(TestEqual), R(0), U8(2), 454 /* 83 E> */ B(TestEqual), R(0), U8(2),
453 B(JumpIfFalse), U8(4), 455 B(JumpIfFalse), U8(4),
454 /* 89 S> */ B(Jump), U8(8), 456 /* 89 S> */ B(Jump), U8(8),
455 /* 101 S> */ B(AddSmi), U8(1), R(0), U8(3), 457 /* 101 S> */ B(AddSmi), U8(1), R(0), U8(3),
456 B(Star), R(0), 458 B(Star), R(0),
457 B(Jump), U8(-25), 459 B(JumpLoop), U8(-25), U8(0),
458 B(LdaUndefined), 460 B(LdaUndefined),
459 /* 114 S> */ B(Return), 461 /* 114 S> */ B(Return),
460 ] 462 ]
461 constant pool: [ 463 constant pool: [
462 ] 464 ]
463 handlers: [ 465 handlers: [
464 ] 466 ]
465 467
466 --- 468 ---
467 snippet: " 469 snippet: "
468 var x = 0; 470 var x = 0;
469 for (;; x = x + 1) { 471 for (;; x = x + 1) {
470 if (x == 1) break; 472 if (x == 1) break;
471 if (x == 2) continue; 473 if (x == 2) continue;
472 } 474 }
473 " 475 "
474 frame size: 1 476 frame size: 1
475 parameter count: 1 477 parameter count: 1
476 bytecode array length: 33 478 bytecode array length: 34
477 bytecodes: [ 479 bytecodes: [
478 /* 30 E> */ B(StackCheck), 480 /* 30 E> */ B(StackCheck),
479 /* 42 S> */ B(LdaZero), 481 /* 42 S> */ B(LdaZero),
480 B(Star), R(0), 482 B(Star), R(0),
481 /* 45 E> */ B(StackCheck), 483 /* 45 E> */ B(StackCheck),
482 /* 68 S> */ B(LdaSmi), U8(1), 484 /* 68 S> */ B(LdaSmi), U8(1),
483 /* 74 E> */ B(TestEqual), R(0), U8(2), 485 /* 74 E> */ B(TestEqual), R(0), U8(2),
484 B(JumpIfFalse), U8(4), 486 B(JumpIfFalse), U8(4),
485 /* 80 S> */ B(Jump), U8(19), 487 /* 80 S> */ B(Jump), U8(20),
486 /* 89 S> */ B(LdaSmi), U8(2), 488 /* 89 S> */ B(LdaSmi), U8(2),
487 /* 95 E> */ B(TestEqual), R(0), U8(3), 489 /* 95 E> */ B(TestEqual), R(0), U8(3),
488 B(JumpIfFalse), U8(4), 490 B(JumpIfFalse), U8(4),
489 /* 101 S> */ B(Jump), U8(2), 491 /* 101 S> */ B(Jump), U8(2),
490 /* 55 S> */ B(AddSmi), U8(1), R(0), U8(1), 492 /* 55 S> */ B(AddSmi), U8(1), R(0), U8(1),
491 B(Star), R(0), 493 B(Star), R(0),
492 B(Jump), U8(-25), 494 B(JumpLoop), U8(-25), U8(0),
493 B(LdaUndefined), 495 B(LdaUndefined),
494 /* 113 S> */ B(Return), 496 /* 113 S> */ B(Return),
495 ] 497 ]
496 constant pool: [ 498 constant pool: [
497 ] 499 ]
498 handlers: [ 500 handlers: [
499 ] 501 ]
500 502
501 --- 503 ---
502 snippet: " 504 snippet: "
503 for (var x = 0;; x = x + 1) { 505 for (var x = 0;; x = x + 1) {
504 if (x == 1) break; 506 if (x == 1) break;
505 if (x == 2) continue; 507 if (x == 2) continue;
506 } 508 }
507 " 509 "
508 frame size: 1 510 frame size: 1
509 parameter count: 1 511 parameter count: 1
510 bytecode array length: 33 512 bytecode array length: 34
511 bytecodes: [ 513 bytecodes: [
512 /* 30 E> */ B(StackCheck), 514 /* 30 E> */ B(StackCheck),
513 /* 47 S> */ B(LdaZero), 515 /* 47 S> */ B(LdaZero),
514 B(Star), R(0), 516 B(Star), R(0),
515 /* 34 E> */ B(StackCheck), 517 /* 34 E> */ B(StackCheck),
516 /* 66 S> */ B(LdaSmi), U8(1), 518 /* 66 S> */ B(LdaSmi), U8(1),
517 /* 72 E> */ B(TestEqual), R(0), U8(2), 519 /* 72 E> */ B(TestEqual), R(0), U8(2),
518 B(JumpIfFalse), U8(4), 520 B(JumpIfFalse), U8(4),
519 /* 78 S> */ B(Jump), U8(19), 521 /* 78 S> */ B(Jump), U8(20),
520 /* 87 S> */ B(LdaSmi), U8(2), 522 /* 87 S> */ B(LdaSmi), U8(2),
521 /* 93 E> */ B(TestEqual), R(0), U8(3), 523 /* 93 E> */ B(TestEqual), R(0), U8(3),
522 B(JumpIfFalse), U8(4), 524 B(JumpIfFalse), U8(4),
523 /* 99 S> */ B(Jump), U8(2), 525 /* 99 S> */ B(Jump), U8(2),
524 /* 53 S> */ B(AddSmi), U8(1), R(0), U8(1), 526 /* 53 S> */ B(AddSmi), U8(1), R(0), U8(1),
525 B(Star), R(0), 527 B(Star), R(0),
526 B(Jump), U8(-25), 528 B(JumpLoop), U8(-25), U8(0),
527 B(LdaUndefined), 529 B(LdaUndefined),
528 /* 111 S> */ B(Return), 530 /* 111 S> */ B(Return),
529 ] 531 ]
530 constant pool: [ 532 constant pool: [
531 ] 533 ]
532 handlers: [ 534 handlers: [
533 ] 535 ]
534 536
535 --- 537 ---
536 snippet: " 538 snippet: "
537 var u = 0; 539 var u = 0;
538 for (var i = 0; i < 100; i = i + 1) { 540 for (var i = 0; i < 100; i = i + 1) {
539 u = u + 1; 541 u = u + 1;
540 continue; 542 continue;
541 } 543 }
542 " 544 "
543 frame size: 2 545 frame size: 2
544 parameter count: 1 546 parameter count: 1
545 bytecode array length: 33 547 bytecode array length: 34
546 bytecodes: [ 548 bytecodes: [
547 /* 30 E> */ B(StackCheck), 549 /* 30 E> */ B(StackCheck),
548 /* 42 S> */ B(LdaZero), 550 /* 42 S> */ B(LdaZero),
549 B(Star), R(0), 551 B(Star), R(0),
550 /* 58 S> */ B(LdaZero), 552 /* 58 S> */ B(LdaZero),
551 B(Star), R(1), 553 B(Star), R(1),
552 /* 63 S> */ B(LdaSmi), U8(100), 554 /* 63 S> */ B(LdaSmi), U8(100),
553 /* 63 E> */ B(TestLessThan), R(1), U8(1), 555 /* 63 E> */ B(TestLessThan), R(1), U8(1),
554 B(JumpIfFalse), U8(19), 556 B(JumpIfFalse), U8(20),
555 /* 45 E> */ B(StackCheck), 557 /* 45 E> */ B(StackCheck),
556 /* 85 S> */ B(AddSmi), U8(1), R(0), U8(3), 558 /* 85 S> */ B(AddSmi), U8(1), R(0), U8(3),
557 B(Star), R(0), 559 B(Star), R(0),
558 /* 98 S> */ B(Jump), U8(2), 560 /* 98 S> */ B(Jump), U8(2),
559 /* 72 S> */ B(AddSmi), U8(1), R(1), U8(2), 561 /* 72 S> */ B(AddSmi), U8(1), R(1), U8(2),
560 B(Star), R(1), 562 B(Star), R(1),
561 B(Jump), U8(-22), 563 B(JumpLoop), U8(-22), U8(0),
562 B(LdaUndefined), 564 B(LdaUndefined),
563 /* 110 S> */ B(Return), 565 /* 110 S> */ B(Return),
564 ] 566 ]
565 constant pool: [ 567 constant pool: [
566 ] 568 ]
567 handlers: [ 569 handlers: [
568 ] 570 ]
569 571
570 --- 572 ---
571 snippet: " 573 snippet: "
572 var y = 1; 574 var y = 1;
573 for (var x = 10; x; --x) { 575 for (var x = 10; x; --x) {
574 y = y * 12; 576 y = y * 12;
575 } 577 }
576 return y; 578 return y;
577 " 579 "
578 frame size: 2 580 frame size: 2
579 parameter count: 1 581 parameter count: 1
580 bytecode array length: 32 582 bytecode array length: 33
581 bytecodes: [ 583 bytecodes: [
582 /* 30 E> */ B(StackCheck), 584 /* 30 E> */ B(StackCheck),
583 /* 42 S> */ B(LdaSmi), U8(1), 585 /* 42 S> */ B(LdaSmi), U8(1),
584 B(Star), R(0), 586 B(Star), R(0),
585 /* 58 S> */ B(LdaSmi), U8(10), 587 /* 58 S> */ B(LdaSmi), U8(10),
586 B(Star), R(1), 588 B(Star), R(1),
587 /* 62 S> */ B(Ldar), R(1), 589 /* 62 S> */ B(Ldar), R(1),
588 B(JumpIfToBooleanFalse), U8(18), 590 B(JumpIfToBooleanFalse), U8(19),
589 /* 45 E> */ B(StackCheck), 591 /* 45 E> */ B(StackCheck),
590 /* 74 S> */ B(LdaSmi), U8(12), 592 /* 74 S> */ B(LdaSmi), U8(12),
591 B(Mul), R(0), U8(2), 593 B(Mul), R(0), U8(2),
592 B(Star), R(0), 594 B(Star), R(0),
593 /* 67 S> */ B(Ldar), R(1), 595 /* 67 S> */ B(Ldar), R(1),
594 B(Dec), U8(1), 596 B(Dec), U8(1),
595 B(Star), R(1), 597 B(Star), R(1),
596 B(Jump), U8(-18), 598 B(JumpLoop), U8(-18), U8(0),
597 /* 88 S> */ B(Ldar), R(0), 599 /* 88 S> */ B(Ldar), R(0),
598 /* 98 S> */ B(Return), 600 /* 98 S> */ B(Return),
599 ] 601 ]
600 constant pool: [ 602 constant pool: [
601 ] 603 ]
602 handlers: [ 604 handlers: [
603 ] 605 ]
604 606
605 --- 607 ---
606 snippet: " 608 snippet: "
(...skipping 24 matching lines...) Expand all
631 snippet: " 633 snippet: "
632 var x = 0; 634 var x = 0;
633 for (var i = 0; true; ++i) { 635 for (var i = 0; true; ++i) {
634 x = x + 1; 636 x = x + 1;
635 if (x == 20) break; 637 if (x == 20) break;
636 }; 638 };
637 return x; 639 return x;
638 " 640 "
639 frame size: 2 641 frame size: 2
640 parameter count: 1 642 parameter count: 1
641 bytecode array length: 34 643 bytecode array length: 35
642 bytecodes: [ 644 bytecodes: [
643 /* 30 E> */ B(StackCheck), 645 /* 30 E> */ B(StackCheck),
644 /* 42 S> */ B(LdaZero), 646 /* 42 S> */ B(LdaZero),
645 B(Star), R(0), 647 B(Star), R(0),
646 /* 58 S> */ B(LdaZero), 648 /* 58 S> */ B(LdaZero),
647 B(Star), R(1), 649 B(Star), R(1),
648 /* 45 E> */ B(StackCheck), 650 /* 45 E> */ B(StackCheck),
649 /* 76 S> */ B(AddSmi), U8(1), R(0), U8(2), 651 /* 76 S> */ B(AddSmi), U8(1), R(0), U8(2),
650 B(Star), R(0), 652 B(Star), R(0),
651 /* 89 S> */ B(LdaSmi), U8(20), 653 /* 89 S> */ B(LdaSmi), U8(20),
652 /* 95 E> */ B(TestEqual), R(0), U8(3), 654 /* 95 E> */ B(TestEqual), R(0), U8(3),
653 B(JumpIfFalse), U8(4), 655 B(JumpIfFalse), U8(4),
654 /* 102 S> */ B(Jump), U8(10), 656 /* 102 S> */ B(Jump), U8(11),
655 /* 69 S> */ B(Ldar), R(1), 657 /* 69 S> */ B(Ldar), R(1),
656 B(Inc), U8(1), 658 B(Inc), U8(1),
657 B(Star), R(1), 659 B(Star), R(1),
658 B(Jump), U8(-22), 660 B(JumpLoop), U8(-22), U8(0),
659 /* 112 S> */ B(Ldar), R(0), 661 /* 112 S> */ B(Ldar), R(0),
660 /* 122 S> */ B(Return), 662 /* 122 S> */ B(Return),
661 ] 663 ]
662 constant pool: [ 664 constant pool: [
663 ] 665 ]
664 handlers: [ 666 handlers: [
665 ] 667 ]
666 668
667 --- 669 ---
668 snippet: " 670 snippet: "
669 var a = 0; 671 var a = 0;
670 while (a) { 672 while (a) {
671 { 673 {
672 let z = 1; 674 let z = 1;
673 function f() { z = 2; } 675 function f() { z = 2; }
674 if (z) continue; 676 if (z) continue;
675 z++; 677 z++;
676 } 678 }
677 } 679 }
678 " 680 "
679 frame size: 6 681 frame size: 6
680 parameter count: 1 682 parameter count: 1
681 bytecode array length: 103 683 bytecode array length: 104
682 bytecodes: [ 684 bytecodes: [
683 /* 30 E> */ B(StackCheck), 685 /* 30 E> */ B(StackCheck),
684 /* 42 S> */ B(LdaZero), 686 /* 42 S> */ B(LdaZero),
685 B(Star), R(1), 687 B(Star), R(1),
686 /* 52 S> */ B(Ldar), R(1), 688 /* 52 S> */ B(Ldar), R(1),
687 B(JumpIfToBooleanFalse), U8(95), 689 B(JumpIfToBooleanFalse), U8(96),
688 /* 45 E> */ B(StackCheck), 690 /* 45 E> */ B(StackCheck),
689 B(Ldar), R(closure), 691 B(Ldar), R(closure),
690 B(CreateBlockContext), U8(0), 692 B(CreateBlockContext), U8(0),
691 B(PushContext), R(3), 693 B(PushContext), R(3),
692 B(LdaTheHole), 694 B(LdaTheHole),
693 B(StaContextSlot), R(context), U8(4), U8(0), 695 B(StaContextSlot), R(context), U8(4), U8(0),
694 B(CreateClosure), U8(1), U8(2), 696 B(CreateClosure), U8(1), U8(2),
695 B(Star), R(0), 697 B(Star), R(0),
696 /* 73 S> */ B(LdaSmi), U8(1), 698 /* 73 S> */ B(LdaSmi), U8(1),
697 /* 73 E> */ B(StaContextSlot), R(context), U8(4), U8(0), 699 /* 73 E> */ B(StaContextSlot), R(context), U8(4), U8(0),
(...skipping 15 matching lines...) Expand all
713 B(Inc), U8(1), 715 B(Inc), U8(1),
714 B(Star), R(4), 716 B(Star), R(4),
715 /* 127 E> */ B(LdaContextSlot), R(context), U8(4), U8(0), 717 /* 127 E> */ B(LdaContextSlot), R(context), U8(4), U8(0),
716 B(JumpIfNotHole), U8(11), 718 B(JumpIfNotHole), U8(11),
717 B(LdaConstant), U8(2), 719 B(LdaConstant), U8(2),
718 B(Star), R(5), 720 B(Star), R(5),
719 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), 721 B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1),
720 B(Ldar), R(4), 722 B(Ldar), R(4),
721 B(StaContextSlot), R(context), U8(4), U8(0), 723 B(StaContextSlot), R(context), U8(4), U8(0),
722 B(PopContext), R(3), 724 B(PopContext), R(3),
723 B(Jump), U8(-95), 725 B(JumpLoop), U8(-95), U8(0),
724 B(LdaUndefined), 726 B(LdaUndefined),
725 /* 137 S> */ B(Return), 727 /* 137 S> */ B(Return),
726 ] 728 ]
727 constant pool: [ 729 constant pool: [
728 FIXED_ARRAY_TYPE, 730 FIXED_ARRAY_TYPE,
729 SHARED_FUNCTION_INFO_TYPE, 731 SHARED_FUNCTION_INFO_TYPE,
730 ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], 732 ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"],
731 ] 733 ]
732 handlers: [ 734 handlers: [
733 ] 735 ]
734 736
OLDNEW
« no previous file with comments | « src/runtime/runtime-compiler.cc ('k') | test/cctest/interpreter/bytecode_expectations/BreakableBlocks.golden » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698