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

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

Issue 2336643002: [Interpreter] Move context chain search loop to handler (Closed)
Patch Set: Fix documentation nits 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: "
11 for (var p of [0, 1, 2]) {} 11 for (var p of [0, 1, 2]) {}
12 " 12 "
13 frame size: 15 13 frame size: 15
14 parameter count: 1 14 parameter count: 1
15 bytecode array length: 277 15 bytecode array length: 278
16 bytecodes: [ 16 bytecodes: [
17 /* 30 E> */ B(StackCheck), 17 /* 30 E> */ B(StackCheck),
18 B(LdaZero), 18 B(LdaZero),
19 B(Star), R(4), 19 B(Star), R(4),
20 B(Mov), R(context), R(11), 20 B(Mov), R(context), R(11),
21 B(Mov), R(context), R(12), 21 B(Mov), R(context), R(12),
22 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(1), 22 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(1),
23 B(Star), R(14), 23 B(Star), R(14),
24 B(LdaConstant), U8(1), 24 B(LdaConstant), U8(1),
25 /* 48 E> */ B(LdrKeyedProperty), R(14), U8(3), R(13), 25 /* 48 E> */ B(LdrKeyedProperty), R(14), U8(3), R(13),
(...skipping 10 matching lines...) Expand all
36 B(JumpIfToBooleanTrue), U8(23), 36 B(JumpIfToBooleanTrue), U8(23),
37 B(LdrNamedProperty), R(3), U8(4), U8(11), R(5), 37 B(LdrNamedProperty), R(3), U8(4), U8(11), R(5),
38 B(LdaSmi), U8(2), 38 B(LdaSmi), U8(2),
39 B(Star), R(4), 39 B(Star), R(4),
40 B(Mov), R(5), R(0), 40 B(Mov), R(5), R(0),
41 /* 34 E> */ B(StackCheck), 41 /* 34 E> */ B(StackCheck),
42 B(Mov), R(0), R(1), 42 B(Mov), R(0), R(1),
43 B(LdaZero), 43 B(LdaZero),
44 B(Star), R(4), 44 B(Star), R(4),
45 B(Jump), U8(-49), 45 B(Jump), U8(-49),
46 B(Jump), U8(36), 46 B(Jump), U8(37),
47 B(Star), R(13), 47 B(Star), R(13),
48 B(Ldar), R(closure), 48 B(Ldar), R(closure),
49 B(CreateCatchContext), R(13), U8(5), U8(6), 49 B(CreateCatchContext), R(13), U8(5), U8(6),
50 B(Star), R(12), 50 B(Star), R(12),
51 B(PushContext), R(8), 51 B(PushContext), R(8),
52 B(LdaSmi), U8(2), 52 B(LdaSmi), U8(2),
53 B(TestEqualStrict), R(4), U8(13), 53 B(TestEqualStrict), R(4), U8(13),
54 B(JumpIfFalse), U8(6), 54 B(JumpIfFalse), U8(6),
55 B(LdaSmi), U8(1), 55 B(LdaSmi), U8(1),
56 B(Star), R(4), 56 B(Star), R(4),
57 B(LdrContextSlot), R(context), U8(4), R(13), 57 B(LdrContextSlot), R(context), U8(4), U8(0), R(13),
58 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), 58 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1),
59 B(PopContext), R(8), 59 B(PopContext), R(8),
60 B(LdaSmi), U8(-1), 60 B(LdaSmi), U8(-1),
61 B(Star), R(9), 61 B(Star), R(9),
62 B(Jump), U8(7), 62 B(Jump), U8(7),
63 B(Star), R(10), 63 B(Star), R(10),
64 B(LdaZero), 64 B(LdaZero),
65 B(Star), R(9), 65 B(Star), R(9),
66 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0), 66 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0),
67 B(Star), R(11), 67 B(Star), R(11),
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], 131 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"],
132 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], 132 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"],
133 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], 133 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"],
134 FIXED_ARRAY_TYPE, 134 FIXED_ARRAY_TYPE,
135 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], 135 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"],
136 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], 136 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"],
137 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], 137 ONE_BYTE_INTERNALIZED_STRING_TYPE [""],
138 FIXED_ARRAY_TYPE, 138 FIXED_ARRAY_TYPE,
139 ] 139 ]
140 handlers: [ 140 handlers: [
141 [7, 116, 122], 141 [7, 117, 123],
142 [10, 80, 82], 142 [10, 80, 82],
143 [199, 209, 211], 143 [200, 210, 212],
144 ] 144 ]
145 145
146 --- 146 ---
147 snippet: " 147 snippet: "
148 var x = 'potatoes'; 148 var x = 'potatoes';
149 for (var p of x) { return p; } 149 for (var p of x) { return p; }
150 " 150 "
151 frame size: 16 151 frame size: 16
152 parameter count: 1 152 parameter count: 1
153 bytecode array length: 289 153 bytecode array length: 290
154 bytecodes: [ 154 bytecodes: [
155 /* 30 E> */ B(StackCheck), 155 /* 30 E> */ B(StackCheck),
156 /* 42 S> */ B(LdaConstant), U8(0), 156 /* 42 S> */ B(LdaConstant), U8(0),
157 B(Star), R(0), 157 B(Star), R(0),
158 B(LdaZero), 158 B(LdaZero),
159 B(Star), R(5), 159 B(Star), R(5),
160 B(Mov), R(context), R(12), 160 B(Mov), R(context), R(12),
161 B(Mov), R(context), R(13), 161 B(Mov), R(context), R(13),
162 /* 68 S> */ B(LdaConstant), U8(1), 162 /* 68 S> */ B(LdaConstant), U8(1),
163 /* 68 E> */ B(LdrKeyedProperty), R(0), U8(3), R(14), 163 /* 68 E> */ B(LdrKeyedProperty), R(0), U8(3), R(14),
(...skipping 10 matching lines...) Expand all
174 B(JumpIfToBooleanTrue), U8(26), 174 B(JumpIfToBooleanTrue), U8(26),
175 B(LdrNamedProperty), R(4), U8(4), U8(11), R(6), 175 B(LdrNamedProperty), R(4), U8(4), U8(11), R(6),
176 B(LdaSmi), U8(2), 176 B(LdaSmi), U8(2),
177 B(Star), R(5), 177 B(Star), R(5),
178 B(Mov), R(6), R(1), 178 B(Mov), R(6), R(1),
179 /* 54 E> */ B(StackCheck), 179 /* 54 E> */ B(StackCheck),
180 B(Mov), R(1), R(2), 180 B(Mov), R(1), R(2),
181 /* 73 S> */ B(LdaZero), 181 /* 73 S> */ B(LdaZero),
182 B(Star), R(10), 182 B(Star), R(10),
183 B(Mov), R(1), R(11), 183 B(Mov), R(1), R(11),
184 B(Jump), U8(50), 184 B(Jump), U8(51),
185 B(Jump), U8(36), 185 B(Jump), U8(37),
186 B(Star), R(14), 186 B(Star), R(14),
187 B(Ldar), R(closure), 187 B(Ldar), R(closure),
188 B(CreateCatchContext), R(14), U8(5), U8(6), 188 B(CreateCatchContext), R(14), U8(5), U8(6),
189 B(Star), R(13), 189 B(Star), R(13),
190 B(PushContext), R(9), 190 B(PushContext), R(9),
191 B(LdaSmi), U8(2), 191 B(LdaSmi), U8(2),
192 B(TestEqualStrict), R(5), U8(13), 192 B(TestEqualStrict), R(5), U8(13),
193 B(JumpIfFalse), U8(6), 193 B(JumpIfFalse), U8(6),
194 B(LdaSmi), U8(1), 194 B(LdaSmi), U8(1),
195 B(Star), R(5), 195 B(Star), R(5),
196 B(LdrContextSlot), R(context), U8(4), R(14), 196 B(LdrContextSlot), R(context), U8(4), U8(0), R(14),
197 B(CallRuntime), U16(Runtime::kReThrow), R(14), U8(1), 197 B(CallRuntime), U16(Runtime::kReThrow), R(14), U8(1),
198 B(PopContext), R(9), 198 B(PopContext), R(9),
199 B(LdaSmi), U8(-1), 199 B(LdaSmi), U8(-1),
200 B(Star), R(10), 200 B(Star), R(10),
201 B(Jump), U8(8), 201 B(Jump), U8(8),
202 B(Star), R(11), 202 B(Star), R(11),
203 B(LdaSmi), U8(1), 203 B(LdaSmi), U8(1),
204 B(Star), R(10), 204 B(Star), R(10),
205 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0), 205 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0),
206 B(Star), R(12), 206 B(Star), R(12),
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], 275 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"],
276 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], 276 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"],
277 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], 277 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"],
278 FIXED_ARRAY_TYPE, 278 FIXED_ARRAY_TYPE,
279 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], 279 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"],
280 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], 280 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"],
281 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], 281 ONE_BYTE_INTERNALIZED_STRING_TYPE [""],
282 FIXED_ARRAY_TYPE, 282 FIXED_ARRAY_TYPE,
283 ] 283 ]
284 handlers: [ 284 handlers: [
285 [11, 117, 123], 285 [11, 118, 124],
286 [14, 81, 83], 286 [14, 81, 83],
287 [201, 211, 213], 287 [202, 212, 214],
288 ] 288 ]
289 289
290 --- 290 ---
291 snippet: " 291 snippet: "
292 for (var x of [10, 20, 30]) { 292 for (var x of [10, 20, 30]) {
293 if (x == 10) continue; 293 if (x == 10) continue;
294 if (x == 20) break; 294 if (x == 20) break;
295 } 295 }
296 " 296 "
297 frame size: 15 297 frame size: 15
298 parameter count: 1 298 parameter count: 1
299 bytecode array length: 295 299 bytecode array length: 296
300 bytecodes: [ 300 bytecodes: [
301 /* 30 E> */ B(StackCheck), 301 /* 30 E> */ B(StackCheck),
302 B(LdaZero), 302 B(LdaZero),
303 B(Star), R(4), 303 B(Star), R(4),
304 B(Mov), R(context), R(11), 304 B(Mov), R(context), R(11),
305 B(Mov), R(context), R(12), 305 B(Mov), R(context), R(12),
306 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(1), 306 /* 48 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(1),
307 B(Star), R(14), 307 B(Star), R(14),
308 B(LdaConstant), U8(1), 308 B(LdaConstant), U8(1),
309 /* 48 E> */ B(LdrKeyedProperty), R(14), U8(3), R(13), 309 /* 48 E> */ B(LdrKeyedProperty), R(14), U8(3), R(13),
(...skipping 18 matching lines...) Expand all
328 /* 72 E> */ B(TestEqual), R(1), U8(13), 328 /* 72 E> */ B(TestEqual), R(1), U8(13),
329 B(JumpIfFalse), U8(4), 329 B(JumpIfFalse), U8(4),
330 /* 79 S> */ B(Jump), U8(14), 330 /* 79 S> */ B(Jump), U8(14),
331 /* 91 S> */ B(LdaSmi), U8(20), 331 /* 91 S> */ B(LdaSmi), U8(20),
332 /* 97 E> */ B(TestEqual), R(1), U8(14), 332 /* 97 E> */ B(TestEqual), R(1), U8(14),
333 B(JumpIfFalse), U8(4), 333 B(JumpIfFalse), U8(4),
334 /* 104 S> */ B(Jump), U8(7), 334 /* 104 S> */ B(Jump), U8(7),
335 B(LdaZero), 335 B(LdaZero),
336 B(Star), R(4), 336 B(Star), R(4),
337 B(Jump), U8(-67), 337 B(Jump), U8(-67),
338 B(Jump), U8(36), 338 B(Jump), U8(37),
339 B(Star), R(13), 339 B(Star), R(13),
340 B(Ldar), R(closure), 340 B(Ldar), R(closure),
341 B(CreateCatchContext), R(13), U8(5), U8(6), 341 B(CreateCatchContext), R(13), U8(5), U8(6),
342 B(Star), R(12), 342 B(Star), R(12),
343 B(PushContext), R(8), 343 B(PushContext), R(8),
344 B(LdaSmi), U8(2), 344 B(LdaSmi), U8(2),
345 B(TestEqualStrict), R(4), U8(15), 345 B(TestEqualStrict), R(4), U8(15),
346 B(JumpIfFalse), U8(6), 346 B(JumpIfFalse), U8(6),
347 B(LdaSmi), U8(1), 347 B(LdaSmi), U8(1),
348 B(Star), R(4), 348 B(Star), R(4),
349 B(LdrContextSlot), R(context), U8(4), R(13), 349 B(LdrContextSlot), R(context), U8(4), U8(0), R(13),
350 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1), 350 B(CallRuntime), U16(Runtime::kReThrow), R(13), U8(1),
351 B(PopContext), R(8), 351 B(PopContext), R(8),
352 B(LdaSmi), U8(-1), 352 B(LdaSmi), U8(-1),
353 B(Star), R(9), 353 B(Star), R(9),
354 B(Jump), U8(7), 354 B(Jump), U8(7),
355 B(Star), R(10), 355 B(Star), R(10),
356 B(LdaZero), 356 B(LdaZero),
357 B(Star), R(9), 357 B(Star), R(9),
358 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0), 358 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0),
359 B(Star), R(11), 359 B(Star), R(11),
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
423 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], 423 ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"],
424 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], 424 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"],
425 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], 425 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"],
426 FIXED_ARRAY_TYPE, 426 FIXED_ARRAY_TYPE,
427 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], 427 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"],
428 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], 428 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"],
429 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], 429 ONE_BYTE_INTERNALIZED_STRING_TYPE [""],
430 FIXED_ARRAY_TYPE, 430 FIXED_ARRAY_TYPE,
431 ] 431 ]
432 handlers: [ 432 handlers: [
433 [7, 134, 140], 433 [7, 135, 141],
434 [10, 98, 100], 434 [10, 98, 100],
435 [217, 227, 229], 435 [218, 228, 230],
436 ] 436 ]
437 437
438 --- 438 ---
439 snippet: " 439 snippet: "
440 var x = { 'a': 1, 'b': 2 }; 440 var x = { 'a': 1, 'b': 2 };
441 for (x['a'] of [1,2,3]) { return x['a']; } 441 for (x['a'] of [1,2,3]) { return x['a']; }
442 " 442 "
443 frame size: 14 443 frame size: 14
444 parameter count: 1 444 parameter count: 1
445 bytecode array length: 302 445 bytecode array length: 303
446 bytecodes: [ 446 bytecodes: [
447 /* 30 E> */ B(StackCheck), 447 /* 30 E> */ B(StackCheck),
448 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), R(8), 448 /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(1), R(8),
449 B(Mov), R(8), R(0), 449 B(Mov), R(8), R(0),
450 B(LdaZero), 450 B(LdaZero),
451 B(Star), R(3), 451 B(Star), R(3),
452 B(Mov), R(context), R(10), 452 B(Mov), R(context), R(10),
453 B(Mov), R(context), R(11), 453 B(Mov), R(context), R(11),
454 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(1), 454 /* 77 S> */ B(CreateArrayLiteral), U8(1), U8(1), U8(1),
455 B(Star), R(13), 455 B(Star), R(13),
(...skipping 13 matching lines...) Expand all
469 /* 67 E> */ B(LdrNamedProperty), R(2), U8(5), U8(11), R(4), 469 /* 67 E> */ B(LdrNamedProperty), R(2), U8(5), U8(11), R(4),
470 B(LdaSmi), U8(2), 470 B(LdaSmi), U8(2),
471 B(Star), R(3), 471 B(Star), R(3),
472 B(Ldar), R(4), 472 B(Ldar), R(4),
473 B(StaNamedPropertySloppy), R(0), U8(6), U8(13), 473 B(StaNamedPropertySloppy), R(0), U8(6), U8(13),
474 /* 62 E> */ B(StackCheck), 474 /* 62 E> */ B(StackCheck),
475 /* 88 S> */ B(Nop), 475 /* 88 S> */ B(Nop),
476 /* 96 E> */ B(LdrNamedProperty), R(0), U8(6), U8(15), R(9), 476 /* 96 E> */ B(LdrNamedProperty), R(0), U8(6), U8(15), R(9),
477 B(LdaZero), 477 B(LdaZero),
478 B(Star), R(8), 478 B(Star), R(8),
479 B(Jump), U8(50), 479 B(Jump), U8(51),
480 B(Jump), U8(36), 480 B(Jump), U8(37),
481 B(Star), R(12), 481 B(Star), R(12),
482 B(Ldar), R(closure), 482 B(Ldar), R(closure),
483 B(CreateCatchContext), R(12), U8(7), U8(8), 483 B(CreateCatchContext), R(12), U8(7), U8(8),
484 B(Star), R(11), 484 B(Star), R(11),
485 B(PushContext), R(7), 485 B(PushContext), R(7),
486 B(LdaSmi), U8(2), 486 B(LdaSmi), U8(2),
487 B(TestEqualStrict), R(3), U8(17), 487 B(TestEqualStrict), R(3), U8(17),
488 B(JumpIfFalse), U8(6), 488 B(JumpIfFalse), U8(6),
489 B(LdaSmi), U8(1), 489 B(LdaSmi), U8(1),
490 B(Star), R(3), 490 B(Star), R(3),
491 B(LdrContextSlot), R(context), U8(4), R(12), 491 B(LdrContextSlot), R(context), U8(4), U8(0), R(12),
492 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1), 492 B(CallRuntime), U16(Runtime::kReThrow), R(12), U8(1),
493 B(PopContext), R(7), 493 B(PopContext), R(7),
494 B(LdaSmi), U8(-1), 494 B(LdaSmi), U8(-1),
495 B(Star), R(8), 495 B(Star), R(8),
496 B(Jump), U8(8), 496 B(Jump), U8(8),
497 B(Star), R(9), 497 B(Star), R(9),
498 B(LdaSmi), U8(1), 498 B(LdaSmi), U8(1),
499 B(Star), R(8), 499 B(Star), R(8),
500 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0), 500 B(CallRuntime), U16(Runtime::kInterpreterClearPendingMessage), R (0), U8(0),
501 B(Star), R(10), 501 B(Star), R(10),
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
572 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], 572 ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"],
573 ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"], 573 ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
574 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], 574 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"],
575 FIXED_ARRAY_TYPE, 575 FIXED_ARRAY_TYPE,
576 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], 576 ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"],
577 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"], 577 ONE_BYTE_INTERNALIZED_STRING_TYPE ["function"],
578 ONE_BYTE_INTERNALIZED_STRING_TYPE [""], 578 ONE_BYTE_INTERNALIZED_STRING_TYPE [""],
579 FIXED_ARRAY_TYPE, 579 FIXED_ARRAY_TYPE,
580 ] 580 ]
581 handlers: [ 581 handlers: [
582 [15, 130, 136], 582 [15, 131, 137],
583 [18, 94, 96], 583 [18, 94, 96],
584 [214, 224, 226], 584 [215, 225, 227],
585 ] 585 ]
586 586
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698