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