OLD | NEW |
1 # | 1 # |
2 # Autogenerated by generate-bytecode-expectations. | 2 # Autogenerated by generate-bytecode-expectations. |
3 # | 3 # |
4 | 4 |
5 --- | 5 --- |
6 wrap: no | 6 wrap: no |
7 test function name: f | 7 test function name: f |
8 | 8 |
9 --- | 9 --- |
10 snippet: " | 10 snippet: " |
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
264 handlers: [ | 264 handlers: [ |
265 ] | 265 ] |
266 | 266 |
267 --- | 267 --- |
268 snippet: " | 268 snippet: " |
269 function* f() { | 269 function* f() { |
270 for (let x = 0; x < 10; ++x) { let y = x; } | 270 for (let x = 0; x < 10; ++x) { let y = x; } |
271 } | 271 } |
272 f(); | 272 f(); |
273 " | 273 " |
274 frame size: 18 | 274 frame size: 13 |
275 parameter count: 1 | 275 parameter count: 1 |
276 bytecode array length: 254 | 276 bytecode array length: 196 |
277 bytecodes: [ | 277 bytecodes: [ |
278 B(Mov), R(new_target), R(7), | 278 B(Mov), R(new_target), R(7), |
279 B(Ldar), R(new_target), | 279 B(Ldar), R(new_target), |
280 B(JumpIfUndefined), U8(25), | 280 B(JumpIfUndefined), U8(25), |
281 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(7), U8
(1), | 281 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(7), U8
(1), |
282 B(PushContext), R(9), | 282 B(PushContext), R(9), |
283 B(RestoreGeneratorState), R(7), | 283 B(RestoreGeneratorState), R(7), |
284 B(Star), R(8), | 284 B(Star), R(8), |
285 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 285 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), |
286 B(LdaSmi), I8(79), | 286 B(LdaSmi), I8(79), |
287 B(Star), R(10), | 287 B(Star), R(9), |
288 B(CallRuntime), U16(Runtime::kAbort), R(10), U8(1), | 288 B(CallRuntime), U16(Runtime::kAbort), R(9), U8(1), |
289 B(LdaSmi), I8(-2), | 289 B(LdaSmi), I8(-2), |
290 B(Star), R(8), | 290 B(Star), R(8), |
291 B(Mov), R(closure), R(10), | 291 B(Mov), R(closure), R(9), |
292 B(Mov), R(this), R(11), | 292 B(Mov), R(this), R(10), |
293 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(10
), U8(2), | 293 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(9)
, U8(2), |
294 B(Star), R(3), | 294 B(Star), R(3), |
295 /* 11 E> */ B(StackCheck), | 295 /* 11 E> */ B(StackCheck), |
296 B(Star), R(7), | |
297 B(Mov), R(context), R(12), | |
298 B(LdaZero), | 296 B(LdaZero), |
299 B(Mov), R(3), R(14), | 297 B(Mov), R(3), R(7), |
300 B(Mov), R(3), R(13), | 298 B(Mov), R(3), R(10), |
301 /* 11 E> */ B(SuspendGenerator), R(13), R(0), U8(14), U8(0), | 299 B(Mov), R(3), R(9), |
302 B(Ldar), R(14), | 300 /* 11 E> */ B(SuspendGenerator), R(9), R(0), U8(10), U8(0), |
| 301 B(Ldar), R(10), |
303 /* 62 S> */ B(Return), | 302 /* 62 S> */ B(Return), |
304 B(RestoreGeneratorRegisters), R(7), R(0), U8(14), | 303 B(RestoreGeneratorRegisters), R(7), R(0), U8(10), |
305 B(LdaSmi), I8(-2), | 304 B(LdaSmi), I8(-2), |
306 B(Star), R(8), | 305 B(Star), R(8), |
307 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(13), U8(1), | 306 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(9), U8(1), |
308 B(Star), R(14), | 307 B(Star), R(10), |
309 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13)
, U8(1), | 308 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(9),
U8(1), |
310 B(Star), R(15), | |
311 B(LdaZero), | |
312 B(TestEqualStrictNoFeedback), R(15), | |
313 B(JumpIfTrue), U8(28), | |
314 B(LdaSmi), I8(2), | |
315 B(TestEqualStrictNoFeedback), R(15), | |
316 B(JumpIfTrue), U8(19), | |
317 B(LdaTrue), | |
318 B(Star), R(17), | |
319 B(Mov), R(14), R(16), | |
320 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(16)
, U8(2), | |
321 B(Star), R(11), | 309 B(Star), R(11), |
322 B(LdaZero), | 310 B(LdaZero), |
323 B(Star), R(10), | 311 B(TestEqualStrictNoFeedback), R(11), |
324 B(Jump), U8(114), | 312 B(JumpIfTrue), U8(18), |
325 B(Ldar), R(14), | 313 B(LdaSmi), I8(2), |
| 314 B(TestEqualStrictNoFeedback), R(11), |
| 315 B(JumpIfTrue), U8(9), |
| 316 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(7), U8(1), |
| 317 B(Ldar), R(10), |
| 318 /* 62 S> */ B(Return), |
| 319 B(Ldar), R(10), |
326 /* 11 E> */ B(Throw), | 320 /* 11 E> */ B(Throw), |
327 /* 31 S> */ B(LdaZero), | 321 /* 31 S> */ B(LdaZero), |
328 B(Star), R(2), | 322 B(Star), R(2), |
329 B(Star), R(4), | 323 B(Star), R(4), |
330 B(LdaSmi), I8(1), | 324 B(LdaSmi), I8(1), |
331 B(Star), R(5), | 325 B(Star), R(5), |
332 /* 60 E> */ B(StackCheck), | 326 /* 60 E> */ B(StackCheck), |
333 B(Mov), R(4), R(1), | 327 B(Mov), R(4), R(1), |
334 B(LdaSmi), I8(1), | 328 B(LdaSmi), I8(1), |
335 B(TestEqual), R(5), U8(3), | 329 B(TestEqual), R(5), U8(3), |
(...skipping 20 matching lines...) Expand all Loading... |
356 B(Star), R(6), | 350 B(Star), R(6), |
357 B(Mov), R(0), R(4), | 351 B(Mov), R(0), R(4), |
358 B(Ldar), R(0), | 352 B(Ldar), R(0), |
359 B(JumpLoop), U8(19), I8(1), | 353 B(JumpLoop), U8(19), I8(1), |
360 B(LdaSmi), I8(1), | 354 B(LdaSmi), I8(1), |
361 /* 60 E> */ B(TestEqual), R(6), U8(7), | 355 /* 60 E> */ B(TestEqual), R(6), U8(7), |
362 B(JumpIfFalse), U8(4), | 356 B(JumpIfFalse), U8(4), |
363 B(Jump), U8(5), | 357 B(Jump), U8(5), |
364 B(JumpLoop), U8(68), I8(0), | 358 B(JumpLoop), U8(68), I8(0), |
365 B(LdaUndefined), | 359 B(LdaUndefined), |
366 B(Star), R(13), | 360 B(Star), R(9), |
367 B(LdaTrue), | 361 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(7), U8(1), |
368 B(Star), R(14), | 362 B(Ldar), R(9), |
369 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(13)
, U8(2), | |
370 B(Star), R(11), | |
371 B(LdaZero), | |
372 B(Star), R(10), | |
373 B(Jump), U8(14), | |
374 B(LdaSmi), I8(-1), | |
375 B(Star), R(10), | |
376 B(Jump), U8(8), | |
377 B(Star), R(11), | |
378 B(LdaSmi), I8(1), | |
379 B(Star), R(10), | |
380 B(LdaTheHole), | |
381 B(SetPendingMessage), | |
382 B(Star), R(12), | |
383 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(3), U8(1), | |
384 B(Ldar), R(12), | |
385 B(SetPendingMessage), | |
386 B(Ldar), R(10), | |
387 B(SwitchOnSmiNoFeedback), U8(1), U8(2), I8(0), | |
388 B(Jump), U8(8), | |
389 B(Ldar), R(11), | |
390 /* 62 S> */ B(Return), | |
391 B(Ldar), R(11), | |
392 B(ReThrow), | |
393 B(LdaUndefined), | |
394 /* 62 S> */ B(Return), | 363 /* 62 S> */ B(Return), |
395 ] | 364 ] |
396 constant pool: [ | 365 constant pool: [ |
397 Smi [50], | 366 Smi [48], |
398 Smi [6], | |
399 Smi [9], | |
400 ] | 367 ] |
401 handlers: [ | 368 handlers: [ |
402 [52, 215, 221], | |
403 ] | 369 ] |
404 | 370 |
405 --- | 371 --- |
406 snippet: " | 372 snippet: " |
407 function* f() { | 373 function* f() { |
408 for (let x = 0; x < 10; ++x) yield x; | 374 for (let x = 0; x < 10; ++x) yield x; |
409 } | 375 } |
410 f(); | 376 f(); |
411 " | 377 " |
412 frame size: 17 | 378 frame size: 12 |
413 parameter count: 1 | 379 parameter count: 1 |
414 bytecode array length: 369 | 380 bytecode array length: 300 |
415 bytecodes: [ | 381 bytecodes: [ |
416 B(Mov), R(new_target), R(6), | 382 B(Mov), R(new_target), R(6), |
417 B(Ldar), R(new_target), | 383 B(Ldar), R(new_target), |
418 B(JumpIfUndefined), U8(25), | 384 B(JumpIfUndefined), U8(25), |
419 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(6), U8
(1), | 385 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(6), U8
(1), |
420 B(PushContext), R(8), | 386 B(PushContext), R(8), |
421 B(RestoreGeneratorState), R(6), | 387 B(RestoreGeneratorState), R(6), |
422 B(Star), R(7), | 388 B(Star), R(7), |
423 B(SwitchOnSmiNoFeedback), U8(0), U8(2), I8(0), | 389 B(SwitchOnSmiNoFeedback), U8(0), U8(2), I8(0), |
424 B(LdaSmi), I8(79), | 390 B(LdaSmi), I8(79), |
425 B(Star), R(9), | 391 B(Star), R(8), |
426 B(CallRuntime), U16(Runtime::kAbort), R(9), U8(1), | 392 B(CallRuntime), U16(Runtime::kAbort), R(8), U8(1), |
427 B(LdaSmi), I8(-2), | 393 B(LdaSmi), I8(-2), |
428 B(Star), R(7), | 394 B(Star), R(7), |
429 B(Mov), R(closure), R(9), | 395 B(Mov), R(closure), R(8), |
430 B(Mov), R(this), R(10), | 396 B(Mov), R(this), R(9), |
431 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(9)
, U8(2), | 397 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(8)
, U8(2), |
432 B(Star), R(2), | 398 B(Star), R(2), |
433 /* 11 E> */ B(StackCheck), | 399 /* 11 E> */ B(StackCheck), |
434 B(Star), R(6), | |
435 B(Mov), R(context), R(11), | |
436 B(LdaZero), | 400 B(LdaZero), |
437 B(Mov), R(2), R(13), | 401 B(Mov), R(2), R(6), |
438 B(Mov), R(2), R(12), | 402 B(Mov), R(2), R(9), |
439 /* 11 E> */ B(SuspendGenerator), R(12), R(0), U8(13), U8(0), | 403 B(Mov), R(2), R(8), |
440 B(Ldar), R(13), | 404 /* 11 E> */ B(SuspendGenerator), R(8), R(0), U8(9), U8(0), |
| 405 B(Ldar), R(9), |
441 /* 56 S> */ B(Return), | 406 /* 56 S> */ B(Return), |
442 B(RestoreGeneratorRegisters), R(6), R(0), U8(13), | 407 B(RestoreGeneratorRegisters), R(6), R(0), U8(9), |
443 B(LdaSmi), I8(-2), | 408 B(LdaSmi), I8(-2), |
444 B(Star), R(7), | 409 B(Star), R(7), |
445 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(12), U8(1), | 410 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(8), U8(1), |
446 B(Star), R(13), | 411 B(Star), R(9), |
447 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12)
, U8(1), | 412 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8),
U8(1), |
448 B(Star), R(14), | |
449 B(LdaZero), | |
450 B(TestEqualStrictNoFeedback), R(14), | |
451 B(JumpIfTrue), U8(28), | |
452 B(LdaSmi), I8(2), | |
453 B(TestEqualStrictNoFeedback), R(14), | |
454 B(JumpIfTrue), U8(19), | |
455 B(LdaTrue), | |
456 B(Star), R(16), | |
457 B(Mov), R(13), R(15), | |
458 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(15)
, U8(2), | |
459 B(Star), R(10), | 413 B(Star), R(10), |
460 B(LdaZero), | 414 B(LdaZero), |
461 B(Star), R(9), | 415 B(TestEqualStrictNoFeedback), R(10), |
462 B(Jump), U8(229), | 416 B(JumpIfTrue), U8(18), |
463 B(Ldar), R(13), | 417 B(LdaSmi), I8(2), |
| 418 B(TestEqualStrictNoFeedback), R(10), |
| 419 B(JumpIfTrue), U8(9), |
| 420 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(6), U8(1), |
| 421 B(Ldar), R(9), |
| 422 /* 56 S> */ B(Return), |
| 423 B(Ldar), R(9), |
464 /* 11 E> */ B(Throw), | 424 /* 11 E> */ B(Throw), |
465 /* 31 S> */ B(LdaZero), | 425 /* 31 S> */ B(LdaZero), |
466 B(Star), R(1), | 426 B(Star), R(1), |
467 B(Star), R(3), | 427 B(Star), R(3), |
468 B(LdaSmi), I8(1), | 428 B(LdaSmi), I8(1), |
469 B(Star), R(4), | 429 B(Star), R(4), |
470 B(Ldar), R(7), | 430 B(Ldar), R(7), |
471 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(1), | 431 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(1), |
472 B(LdaSmi), I8(-2), | 432 B(LdaSmi), I8(-2), |
473 /* 54 E> */ B(TestEqualStrictNoFeedback), R(7), | 433 /* 54 E> */ B(TestEqualStrictNoFeedback), R(7), |
474 B(JumpIfTrue), U8(11), | 434 B(JumpIfTrue), U8(11), |
475 B(LdaSmi), I8(79), | 435 B(LdaSmi), I8(79), |
476 B(Star), R(12), | 436 B(Star), R(8), |
477 B(CallRuntime), U16(Runtime::kAbort), R(12), U8(1), | 437 B(CallRuntime), U16(Runtime::kAbort), R(8), U8(1), |
478 B(StackCheck), | 438 B(StackCheck), |
479 B(Mov), R(3), R(0), | 439 B(Mov), R(3), R(0), |
480 B(LdaSmi), I8(1), | 440 B(LdaSmi), I8(1), |
481 B(TestEqual), R(4), U8(3), | 441 B(TestEqual), R(4), U8(3), |
482 B(JumpIfFalse), U8(7), | 442 B(JumpIfFalse), U8(7), |
483 B(LdaZero), | 443 B(LdaZero), |
484 B(Star), R(4), | 444 B(Star), R(4), |
485 B(Jump), U8(8), | 445 B(Jump), U8(8), |
486 /* 44 S> */ B(Ldar), R(0), | 446 /* 44 S> */ B(Ldar), R(0), |
487 B(Inc), U8(4), | 447 B(Inc), U8(4), |
488 B(Star), R(0), | 448 B(Star), R(0), |
489 B(LdaSmi), I8(1), | 449 B(LdaSmi), I8(1), |
490 B(Star), R(5), | 450 B(Star), R(5), |
491 /* 36 S> */ B(LdaSmi), I8(10), | 451 /* 36 S> */ B(LdaSmi), I8(10), |
492 /* 36 E> */ B(TestLessThan), R(0), U8(5), | 452 /* 36 E> */ B(TestLessThan), R(0), U8(5), |
493 B(JumpIfFalse), U8(4), | 453 B(JumpIfFalse), U8(4), |
494 B(Jump), U8(4), | 454 B(Jump), U8(4), |
495 B(Jump), U8(130), | 455 B(Jump), U8(119), |
496 B(Ldar), R(7), | 456 B(Ldar), R(7), |
497 B(SwitchOnSmiNoFeedback), U8(3), U8(1), I8(1), | 457 B(SwitchOnSmiNoFeedback), U8(3), U8(1), I8(1), |
498 B(LdaSmi), I8(-2), | 458 B(LdaSmi), I8(-2), |
499 B(TestEqualStrictNoFeedback), R(7), | 459 B(TestEqualStrictNoFeedback), R(7), |
500 B(JumpIfTrue), U8(11), | 460 B(JumpIfTrue), U8(11), |
501 B(LdaSmi), I8(79), | 461 B(LdaSmi), I8(79), |
502 B(Star), R(12), | 462 B(Star), R(8), |
503 B(CallRuntime), U16(Runtime::kAbort), R(12), U8(1), | 463 B(CallRuntime), U16(Runtime::kAbort), R(8), U8(1), |
504 B(LdaSmi), I8(1), | 464 B(LdaSmi), I8(1), |
505 B(TestEqual), R(5), U8(6), | 465 B(TestEqual), R(5), U8(6), |
506 B(JumpIfFalse), U8(90), | 466 B(JumpIfFalse), U8(79), |
507 /* 18 E> */ B(StackCheck), | 467 /* 18 E> */ B(StackCheck), |
508 /* 47 S> */ B(LdaFalse), | 468 /* 47 S> */ B(LdaSmi), I8(1), |
509 B(Star), R(14), | 469 B(Mov), R(0), R(9), |
510 B(Mov), R(0), R(13), | 470 B(Mov), R(2), R(8), |
511 /* 53 E> */ B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(13)
, U8(2), | 471 /* 53 E> */ B(SuspendGenerator), R(8), R(0), U8(9), U8(0), |
512 B(Star), R(13), | 472 B(LdaFalse), |
513 B(LdaSmi), I8(1), | 473 B(Star), R(11), |
514 B(Mov), R(2), R(12), | 474 B(Mov), R(9), R(10), |
515 B(SuspendGenerator), R(12), R(0), U8(13), U8(0), | 475 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(10)
, U8(2), |
516 B(Ldar), R(13), | |
517 /* 56 S> */ B(Return), | 476 /* 56 S> */ B(Return), |
518 B(RestoreGeneratorRegisters), R(6), R(0), U8(13), | 477 B(RestoreGeneratorRegisters), R(6), R(0), U8(9), |
519 B(LdaSmi), I8(-2), | 478 B(LdaSmi), I8(-2), |
520 B(Star), R(7), | 479 B(Star), R(7), |
521 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(12), U8(1), | 480 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(8), U8(1), |
522 B(Star), R(13), | 481 B(Star), R(9), |
523 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12)
, U8(1), | 482 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8),
U8(1), |
524 B(Star), R(14), | |
525 B(LdaZero), | |
526 B(TestEqualStrictNoFeedback), R(14), | |
527 B(JumpIfTrue), U8(28), | |
528 B(LdaSmi), I8(2), | |
529 B(TestEqualStrictNoFeedback), R(14), | |
530 B(JumpIfTrue), U8(19), | |
531 B(LdaTrue), | |
532 B(Star), R(16), | |
533 B(Mov), R(13), R(15), | |
534 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(15)
, U8(2), | |
535 B(Star), R(10), | 483 B(Star), R(10), |
536 B(LdaZero), | 484 B(LdaZero), |
537 B(Star), R(9), | 485 B(TestEqualStrictNoFeedback), R(10), |
538 B(Jump), U8(57), | 486 B(JumpIfTrue), U8(18), |
539 B(Ldar), R(13), | 487 B(LdaSmi), I8(2), |
| 488 B(TestEqualStrictNoFeedback), R(10), |
| 489 B(JumpIfTrue), U8(9), |
| 490 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(6), U8(1), |
| 491 B(Ldar), R(9), |
| 492 /* 56 S> */ B(Return), |
| 493 B(Ldar), R(9), |
540 /* 47 E> */ B(Throw), | 494 /* 47 E> */ B(Throw), |
541 B(LdaZero), | 495 B(LdaZero), |
542 B(Star), R(5), | 496 B(Star), R(5), |
543 B(Mov), R(0), R(3), | 497 B(Mov), R(0), R(3), |
544 B(Ldar), R(0), | 498 B(Ldar), R(0), |
545 B(JumpLoop), U8(113), I8(1), | 499 B(JumpLoop), U8(102), I8(1), |
546 B(LdaSmi), I8(1), | 500 B(LdaSmi), I8(1), |
547 /* 54 E> */ B(TestEqual), R(5), U8(7), | 501 /* 54 E> */ B(TestEqual), R(5), U8(7), |
548 B(JumpIfFalse), U8(4), | 502 B(JumpIfFalse), U8(4), |
549 B(Jump), U8(5), | 503 B(Jump), U8(5), |
550 B(JumpLoop), U8(183), I8(0), | 504 B(JumpLoop), U8(172), I8(0), |
551 B(LdaUndefined), | 505 B(LdaUndefined), |
552 B(Star), R(12), | 506 B(Star), R(8), |
553 B(LdaTrue), | 507 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(6), U8(1), |
554 B(Star), R(13), | 508 B(Ldar), R(8), |
555 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(12)
, U8(2), | |
556 B(Star), R(10), | |
557 B(LdaZero), | |
558 B(Star), R(9), | |
559 B(Jump), U8(14), | |
560 B(LdaSmi), I8(-1), | |
561 B(Star), R(9), | |
562 B(Jump), U8(8), | |
563 B(Star), R(10), | |
564 B(LdaSmi), I8(1), | |
565 B(Star), R(9), | |
566 B(LdaTheHole), | |
567 B(SetPendingMessage), | |
568 B(Star), R(11), | |
569 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(2), U8(1), | |
570 B(Ldar), R(11), | |
571 B(SetPendingMessage), | |
572 B(Ldar), R(9), | |
573 B(SwitchOnSmiNoFeedback), U8(4), U8(2), I8(0), | |
574 B(Jump), U8(8), | |
575 B(Ldar), R(10), | |
576 /* 56 S> */ B(Return), | |
577 B(Ldar), R(10), | |
578 B(ReThrow), | |
579 B(LdaUndefined), | |
580 /* 56 S> */ B(Return), | 509 /* 56 S> */ B(Return), |
581 ] | 510 ] |
582 constant pool: [ | 511 constant pool: [ |
583 Smi [50], | 512 Smi [48], |
584 Smi [110], | 513 Smi [98], |
585 Smi [56], | 514 Smi [56], |
586 Smi [52], | 515 Smi [51], |
587 Smi [6], | |
588 Smi [9], | |
589 ] | 516 ] |
590 handlers: [ | 517 handlers: [ |
591 [52, 330, 336], | |
592 ] | 518 ] |
593 | 519 |
594 --- | 520 --- |
595 snippet: " | 521 snippet: " |
596 async function f() { | 522 async function f() { |
597 for (let x = 0; x < 10; ++x) { let y = x; } | 523 for (let x = 0; x < 10; ++x) { let y = x; } |
598 } | 524 } |
599 f(); | 525 f(); |
600 " | 526 " |
601 frame size: 17 | 527 frame size: 17 |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
715 [16, 117, 119], | 641 [16, 117, 119], |
716 ] | 642 ] |
717 | 643 |
718 --- | 644 --- |
719 snippet: " | 645 snippet: " |
720 async function f() { | 646 async function f() { |
721 for (let x = 0; x < 10; ++x) await x; | 647 for (let x = 0; x < 10; ++x) await x; |
722 } | 648 } |
723 f(); | 649 f(); |
724 " | 650 " |
725 frame size: 19 | 651 frame size: 18 |
726 parameter count: 1 | 652 parameter count: 1 |
727 bytecode array length: 377 | 653 bytecode array length: 368 |
728 bytecodes: [ | 654 bytecodes: [ |
729 B(Mov), R(new_target), R(7), | 655 B(Mov), R(new_target), R(7), |
730 B(Ldar), R(new_target), | 656 B(Ldar), R(new_target), |
731 B(JumpIfUndefined), U8(25), | 657 B(JumpIfUndefined), U8(25), |
732 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(7), U8
(1), | 658 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(7), U8
(1), |
733 B(PushContext), R(9), | 659 B(PushContext), R(9), |
734 B(RestoreGeneratorState), R(7), | 660 B(RestoreGeneratorState), R(7), |
735 B(Star), R(8), | 661 B(Star), R(8), |
736 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 662 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), |
737 B(LdaSmi), I8(79), | 663 B(LdaSmi), I8(79), |
738 B(Star), R(10), | 664 B(Star), R(9), |
739 B(CallRuntime), U16(Runtime::kAbort), R(10), U8(1), | 665 B(CallRuntime), U16(Runtime::kAbort), R(9), U8(1), |
740 B(LdaSmi), I8(-2), | 666 B(LdaSmi), I8(-2), |
741 B(Star), R(8), | 667 B(Star), R(8), |
742 B(Mov), R(closure), R(10), | 668 B(Mov), R(closure), R(9), |
743 B(Mov), R(this), R(11), | 669 B(Mov), R(this), R(10), |
744 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(10
), U8(2), | 670 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(9)
, U8(2), |
745 B(Star), R(2), | 671 B(Star), R(2), |
746 /* 16 E> */ B(StackCheck), | 672 /* 16 E> */ B(StackCheck), |
747 B(LdaUndefined), | 673 B(LdaUndefined), |
748 B(Star), R(10), | 674 B(Star), R(9), |
749 B(CallJSRuntime), U8(%async_function_promise_create), R(10), U8(
1), | 675 B(CallJSRuntime), U8(%async_function_promise_create), R(9), U8(1
), |
750 B(Star), R(3), | 676 B(Star), R(3), |
| 677 B(Mov), R(context), R(11), |
| 678 B(Mov), R(2), R(7), |
751 B(Mov), R(context), R(12), | 679 B(Mov), R(context), R(12), |
752 B(Mov), R(2), R(7), | |
753 B(Mov), R(context), R(13), | |
754 /* 36 S> */ B(LdaZero), | 680 /* 36 S> */ B(LdaZero), |
755 B(Star), R(1), | 681 B(Star), R(1), |
756 B(Star), R(4), | 682 B(Star), R(4), |
757 B(LdaSmi), I8(1), | 683 B(LdaSmi), I8(1), |
758 B(Star), R(5), | 684 B(Star), R(5), |
759 B(Ldar), R(8), | 685 B(Ldar), R(8), |
760 B(SwitchOnSmiNoFeedback), U8(1), U8(1), I8(0), | 686 B(SwitchOnSmiNoFeedback), U8(1), U8(1), I8(0), |
761 B(LdaSmi), I8(-2), | 687 B(LdaSmi), I8(-2), |
762 /* 59 E> */ B(TestEqualStrictNoFeedback), R(8), | 688 /* 59 E> */ B(TestEqualStrictNoFeedback), R(8), |
763 B(JumpIfTrue), U8(11), | 689 B(JumpIfTrue), U8(11), |
764 B(LdaSmi), I8(79), | 690 B(LdaSmi), I8(79), |
765 B(Star), R(14), | 691 B(Star), R(13), |
766 B(CallRuntime), U16(Runtime::kAbort), R(14), U8(1), | 692 B(CallRuntime), U16(Runtime::kAbort), R(13), U8(1), |
767 B(StackCheck), | 693 B(StackCheck), |
768 B(Mov), R(4), R(0), | 694 B(Mov), R(4), R(0), |
769 B(LdaSmi), I8(1), | 695 B(LdaSmi), I8(1), |
770 B(TestEqual), R(5), U8(3), | 696 B(TestEqual), R(5), U8(3), |
771 B(JumpIfFalse), U8(7), | 697 B(JumpIfFalse), U8(7), |
772 B(LdaZero), | 698 B(LdaZero), |
773 B(Star), R(5), | 699 B(Star), R(5), |
774 B(Jump), U8(8), | 700 B(Jump), U8(8), |
775 /* 49 S> */ B(Ldar), R(0), | 701 /* 49 S> */ B(Ldar), R(0), |
776 B(Inc), U8(4), | 702 B(Inc), U8(4), |
777 B(Star), R(0), | 703 B(Star), R(0), |
778 B(LdaSmi), I8(1), | 704 B(LdaSmi), I8(1), |
779 B(Star), R(6), | 705 B(Star), R(6), |
780 /* 41 S> */ B(LdaSmi), I8(10), | 706 /* 41 S> */ B(LdaSmi), I8(10), |
781 /* 41 E> */ B(TestLessThan), R(0), U8(5), | 707 /* 41 E> */ B(TestLessThan), R(0), U8(5), |
782 B(JumpIfFalse), U8(4), | 708 B(JumpIfFalse), U8(4), |
783 B(Jump), U8(4), | 709 B(Jump), U8(4), |
784 B(Jump), U8(136), | 710 B(Jump), U8(127), |
785 B(Ldar), R(8), | 711 B(Ldar), R(8), |
786 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(0), | 712 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(0), |
787 B(LdaSmi), I8(-2), | 713 B(LdaSmi), I8(-2), |
788 B(TestEqualStrictNoFeedback), R(8), | 714 B(TestEqualStrictNoFeedback), R(8), |
789 B(JumpIfTrue), U8(11), | 715 B(JumpIfTrue), U8(11), |
790 B(LdaSmi), I8(79), | 716 B(LdaSmi), I8(79), |
791 B(Star), R(14), | 717 B(Star), R(13), |
792 B(CallRuntime), U16(Runtime::kAbort), R(14), U8(1), | 718 B(CallRuntime), U16(Runtime::kAbort), R(13), U8(1), |
793 B(LdaSmi), I8(1), | 719 B(LdaSmi), I8(1), |
794 B(TestEqual), R(6), U8(6), | 720 B(TestEqual), R(6), U8(6), |
795 B(JumpIfFalse), U8(96), | 721 B(JumpIfFalse), U8(87), |
796 /* 23 E> */ B(StackCheck), | 722 /* 23 E> */ B(StackCheck), |
797 /* 52 S> */ B(LdaUndefined), | 723 /* 52 S> */ B(LdaUndefined), |
798 B(Star), R(15), | 724 B(Star), R(14), |
799 B(Mov), R(2), R(16), | 725 B(Mov), R(2), R(15), |
800 B(Mov), R(0), R(17), | 726 B(Mov), R(0), R(16), |
801 B(Mov), R(3), R(18), | 727 B(Mov), R(3), R(17), |
802 /* 58 E> */ B(CallJSRuntime), U8(%async_function_await_uncaught), R(15), U8(
4), | 728 /* 58 E> */ B(CallJSRuntime), U8(%async_function_await_uncaught), R(14), U8(
4), |
803 B(LdaZero), | 729 B(LdaZero), |
804 B(Mov), R(2), R(14), | 730 B(Mov), R(2), R(13), |
805 B(Mov), R(3), R(15), | 731 B(Mov), R(3), R(14), |
806 B(SuspendGenerator), R(14), R(0), U8(15), U8(2), | 732 B(SuspendGenerator), R(13), R(0), U8(14), U8(2), |
807 B(Ldar), R(15), | 733 B(Ldar), R(14), |
808 /* 61 S> */ B(Return), | 734 /* 61 S> */ B(Return), |
809 B(RestoreGeneratorRegisters), R(7), R(0), U8(15), | 735 B(RestoreGeneratorRegisters), R(7), R(0), U8(14), |
810 B(LdaSmi), I8(-2), | 736 B(LdaSmi), I8(-2), |
811 B(Star), R(8), | 737 B(Star), R(8), |
812 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(14), U8(1), | 738 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(13), U8(1), |
| 739 B(Star), R(14), |
| 740 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13)
, U8(1), |
813 B(Star), R(15), | 741 B(Star), R(15), |
814 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(14)
, U8(1), | |
815 B(Star), R(16), | |
816 B(LdaZero), | 742 B(LdaZero), |
817 B(TestEqualStrictNoFeedback), R(16), | 743 B(TestEqualStrictNoFeedback), R(15), |
818 B(JumpIfTrue), U8(28), | 744 B(JumpIfTrue), U8(19), |
819 B(LdaSmi), I8(2), | 745 B(LdaSmi), I8(2), |
820 B(TestEqualStrictNoFeedback), R(16), | 746 B(TestEqualStrictNoFeedback), R(15), |
821 B(JumpIfTrue), U8(19), | 747 B(JumpIfTrue), U8(10), |
822 B(LdaTrue), | |
823 B(Star), R(18), | |
824 B(Mov), R(15), R(17), | |
825 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(17)
, U8(2), | |
826 B(Star), R(11), | |
827 B(LdaZero), | 748 B(LdaZero), |
828 B(Star), R(10), | 749 B(Star), R(9), |
| 750 B(Mov), R(14), R(10), |
829 B(Jump), U8(106), | 751 B(Jump), U8(106), |
830 B(Ldar), R(15), | 752 B(Ldar), R(14), |
831 /* 52 E> */ B(ReThrow), | 753 /* 52 E> */ B(ReThrow), |
832 B(LdaZero), | 754 B(LdaZero), |
833 B(Star), R(6), | 755 B(Star), R(6), |
834 B(Mov), R(0), R(4), | 756 B(Mov), R(0), R(4), |
835 B(Ldar), R(0), | 757 B(Ldar), R(0), |
836 B(JumpLoop), U8(119), I8(1), | 758 B(JumpLoop), U8(110), I8(1), |
837 B(LdaSmi), I8(1), | 759 B(LdaSmi), I8(1), |
838 /* 59 E> */ B(TestEqual), R(6), U8(7), | 760 /* 59 E> */ B(TestEqual), R(6), U8(7), |
839 B(JumpIfFalse), U8(4), | 761 B(JumpIfFalse), U8(4), |
840 B(Jump), U8(5), | 762 B(Jump), U8(5), |
841 B(JumpLoop), U8(189), I8(0), | 763 B(JumpLoop), U8(180), I8(0), |
| 764 B(LdaUndefined), |
| 765 B(Star), R(13), |
| 766 B(LdaUndefined), |
| 767 B(Star), R(15), |
| 768 B(Mov), R(3), R(14), |
| 769 B(CallJSRuntime), U8(%promise_resolve), R(13), U8(3), |
| 770 B(LdaZero), |
| 771 B(Star), R(9), |
| 772 B(Mov), R(3), R(10), |
| 773 B(Jump), U8(59), |
| 774 B(Jump), U8(45), |
| 775 B(Star), R(13), |
| 776 B(Ldar), R(closure), |
| 777 B(CreateCatchContext), R(13), U8(3), U8(4), |
| 778 B(Star), R(12), |
| 779 B(LdaTheHole), |
| 780 B(SetPendingMessage), |
| 781 B(Ldar), R(12), |
| 782 B(PushContext), R(13), |
842 B(LdaUndefined), | 783 B(LdaUndefined), |
843 B(Star), R(14), | 784 B(Star), R(14), |
844 B(LdaUndefined), | 785 B(LdaImmutableCurrentContextSlot), U8(4), |
845 B(Star), R(16), | 786 B(Star), R(16), |
| 787 B(LdaFalse), |
| 788 B(Star), R(17), |
846 B(Mov), R(3), R(15), | 789 B(Mov), R(3), R(15), |
847 B(CallJSRuntime), U8(%promise_resolve), R(14), U8(3), | 790 B(CallJSRuntime), U8(%promise_internal_reject), R(14), U8(4), |
| 791 B(PopContext), R(13), |
848 B(LdaZero), | 792 B(LdaZero), |
| 793 B(Star), R(9), |
| 794 B(Mov), R(3), R(10), |
| 795 B(Jump), U8(14), |
| 796 B(LdaSmi), I8(-1), |
| 797 B(Star), R(9), |
| 798 B(Jump), U8(8), |
849 B(Star), R(10), | 799 B(Star), R(10), |
850 B(Mov), R(3), R(11), | 800 B(LdaSmi), I8(1), |
851 B(Jump), U8(59), | 801 B(Star), R(9), |
852 B(Jump), U8(45), | |
853 B(Star), R(14), | |
854 B(Ldar), R(closure), | |
855 B(CreateCatchContext), R(14), U8(3), U8(4), | |
856 B(Star), R(13), | |
857 B(LdaTheHole), | 802 B(LdaTheHole), |
858 B(SetPendingMessage), | 803 B(SetPendingMessage), |
859 B(Ldar), R(13), | 804 B(Star), R(11), |
860 B(PushContext), R(14), | |
861 B(LdaUndefined), | 805 B(LdaUndefined), |
862 B(Star), R(15), | 806 B(Star), R(12), |
863 B(LdaImmutableCurrentContextSlot), U8(4), | 807 B(Mov), R(3), R(13), |
864 B(Star), R(17), | 808 B(CallJSRuntime), U8(%async_function_promise_release), R(12), U8
(2), |
865 B(LdaFalse), | 809 B(Ldar), R(11), |
866 B(Star), R(18), | |
867 B(Mov), R(3), R(16), | |
868 B(CallJSRuntime), U8(%promise_internal_reject), R(15), U8(4), | |
869 B(PopContext), R(14), | |
870 B(LdaZero), | |
871 B(Star), R(10), | |
872 B(Mov), R(3), R(11), | |
873 B(Jump), U8(14), | |
874 B(LdaSmi), I8(-1), | |
875 B(Star), R(10), | |
876 B(Jump), U8(8), | |
877 B(Star), R(11), | |
878 B(LdaSmi), I8(1), | |
879 B(Star), R(10), | |
880 B(LdaTheHole), | |
881 B(SetPendingMessage), | 810 B(SetPendingMessage), |
882 B(Star), R(12), | 811 B(Ldar), R(9), |
883 B(LdaUndefined), | |
884 B(Star), R(13), | |
885 B(Mov), R(3), R(14), | |
886 B(CallJSRuntime), U8(%async_function_promise_release), R(13), U8
(2), | |
887 B(Ldar), R(12), | |
888 B(SetPendingMessage), | |
889 B(Ldar), R(10), | |
890 B(SwitchOnSmiNoFeedback), U8(5), U8(2), I8(0), | 812 B(SwitchOnSmiNoFeedback), U8(5), U8(2), I8(0), |
891 B(Jump), U8(8), | 813 B(Jump), U8(8), |
892 B(Ldar), R(11), | 814 B(Ldar), R(10), |
893 /* 61 S> */ B(Return), | 815 /* 61 S> */ B(Return), |
894 B(Ldar), R(11), | 816 B(Ldar), R(10), |
895 B(ReThrow), | 817 B(ReThrow), |
896 B(LdaUndefined), | 818 B(LdaUndefined), |
897 /* 61 S> */ B(Return), | 819 /* 61 S> */ B(Return), |
898 ] | 820 ] |
899 constant pool: [ | 821 constant pool: [ |
900 Smi [57], | 822 Smi [57], |
901 Smi [56], | 823 Smi [56], |
902 Smi [58], | 824 Smi [58], |
903 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 825 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
904 FIXED_ARRAY_TYPE, | 826 FIXED_ARRAY_TYPE, |
905 Smi [6], | 827 Smi [6], |
906 Smi [9], | 828 Smi [9], |
907 ] | 829 ] |
908 handlers: [ | 830 handlers: [ |
909 [62, 332, 338], | 831 [62, 323, 329], |
910 [65, 287, 289], | 832 [65, 278, 280], |
911 ] | 833 ] |
912 | 834 |
OLD | NEW |