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: 14 | 274 frame size: 17 |
275 parameter count: 1 | 275 parameter count: 1 |
276 bytecode array length: 331 | 276 bytecode array length: 243 |
277 bytecodes: [ | 277 bytecodes: [ |
278 B(Ldar), R(new_target), | 278 B(Ldar), R(new_target), |
279 B(JumpIfUndefined), U8(25), | 279 B(JumpIfUndefined), U8(25), |
280 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), | 280 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), |
281 B(PushContext), R(5), | 281 B(PushContext), R(8), |
282 B(ResumeGenerator), R(new_target), | 282 B(ResumeGenerator), R(new_target), |
283 B(Star), R(4), | 283 B(Star), R(7), |
284 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 284 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), |
285 B(LdaSmi), I8(79), | 285 B(LdaSmi), I8(79), |
286 B(Star), R(6), | 286 B(Star), R(9), |
287 B(CallRuntime), U16(Runtime::kAbort), R(6), U8(1), | 287 B(CallRuntime), U16(Runtime::kAbort), R(9), U8(1), |
288 B(LdaSmi), I8(-2), | 288 B(LdaSmi), I8(-2), |
289 B(Star), R(4), | 289 B(Star), R(7), |
290 B(CreateFunctionContext), U8(4), | 290 B(Mov), R(closure), R(9), |
291 B(PushContext), R(0), | 291 B(Mov), R(this), R(10), |
292 B(Mov), R(closure), R(6), | 292 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(9)
, U8(2), |
293 B(Mov), R(this), R(7), | 293 B(Star), R(3), |
294 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(6)
, U8(2), | |
295 B(StaCurrentContextSlot), U8(4), | |
296 /* 11 E> */ B(StackCheck), | 294 /* 11 E> */ B(StackCheck), |
297 B(Mov), R(context), R(8), | 295 B(Mov), R(context), R(11), |
298 B(LdaImmutableCurrentContextSlot), U8(4), | 296 B(LdaZero), |
299 B(Star), R(9), | 297 B(Mov), R(3), R(13), |
300 B(LdaImmutableCurrentContextSlot), U8(4), | 298 B(Mov), R(3), R(12), |
| 299 /* 11 E> */ B(SuspendGenerator), R(12), U8(0), |
| 300 B(Ldar), R(13), |
| 301 /* 62 S> */ B(Return), |
| 302 B(LdaSmi), I8(-2), |
| 303 B(Star), R(7), |
| 304 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(12), 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(LdaZero), |
| 309 B(TestEqualStrictNoFeedback), R(14), |
| 310 B(JumpIfTrue), U8(28), |
| 311 B(LdaSmi), I8(2), |
| 312 B(TestEqualStrictNoFeedback), R(14), |
| 313 B(JumpIfTrue), U8(19), |
| 314 B(LdaTrue), |
| 315 B(Star), R(16), |
| 316 B(Mov), R(13), R(15), |
| 317 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(15)
, U8(2), |
301 B(Star), R(10), | 318 B(Star), R(10), |
302 B(LdaZero), | 319 B(LdaZero), |
303 /* 11 E> */ B(SuspendGenerator), R(9), U8(0), | 320 B(Star), R(9), |
| 321 B(Jump), U8(114), |
| 322 B(Ldar), R(13), |
| 323 /* 11 E> */ B(Throw), |
| 324 /* 31 S> */ B(LdaZero), |
| 325 B(Star), R(2), |
| 326 B(Star), R(4), |
| 327 B(LdaSmi), I8(1), |
| 328 B(Star), R(5), |
| 329 /* 60 E> */ B(StackCheck), |
| 330 B(Mov), R(4), R(1), |
| 331 B(LdaSmi), I8(1), |
| 332 B(TestEqual), R(5), U8(3), |
| 333 B(JumpIfFalse), U8(7), |
| 334 B(LdaZero), |
| 335 B(Star), R(5), |
| 336 B(Jump), U8(8), |
| 337 /* 44 S> */ B(Ldar), R(1), |
| 338 B(Inc), U8(4), |
| 339 B(Star), R(1), |
| 340 B(LdaSmi), I8(1), |
| 341 B(Star), R(6), |
| 342 /* 36 S> */ B(LdaSmi), I8(10), |
| 343 /* 36 E> */ B(TestLessThan), R(1), U8(5), |
| 344 B(JumpIfFalse), U8(4), |
| 345 B(Jump), U8(4), |
| 346 B(Jump), U8(36), |
| 347 B(LdaSmi), I8(1), |
| 348 B(TestEqual), R(6), U8(6), |
| 349 B(JumpIfFalse), U8(17), |
| 350 /* 18 E> */ B(StackCheck), |
| 351 /* 57 S> */ B(Mov), R(1), R(0), |
| 352 B(LdaZero), |
| 353 B(Star), R(6), |
| 354 B(Mov), R(0), R(4), |
| 355 B(Ldar), R(0), |
| 356 B(JumpLoop), U8(19), I8(1), |
| 357 B(LdaSmi), I8(1), |
| 358 /* 60 E> */ B(TestEqual), R(6), U8(7), |
| 359 B(JumpIfFalse), U8(4), |
| 360 B(Jump), U8(5), |
| 361 B(JumpLoop), U8(68), I8(0), |
| 362 B(LdaUndefined), |
| 363 B(Star), R(12), |
| 364 B(LdaTrue), |
| 365 B(Star), R(13), |
| 366 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(12)
, U8(2), |
| 367 B(Star), R(10), |
| 368 B(LdaZero), |
| 369 B(Star), R(9), |
| 370 B(Jump), U8(14), |
| 371 B(LdaSmi), I8(-1), |
| 372 B(Star), R(9), |
| 373 B(Jump), U8(8), |
| 374 B(Star), R(10), |
| 375 B(LdaSmi), I8(1), |
| 376 B(Star), R(9), |
| 377 B(LdaTheHole), |
| 378 B(SetPendingMessage), |
| 379 B(Star), R(11), |
| 380 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(3), U8(1), |
| 381 B(Ldar), R(11), |
| 382 B(SetPendingMessage), |
| 383 B(Ldar), R(9), |
| 384 B(SwitchOnSmiNoFeedback), U8(1), U8(2), I8(0), |
| 385 B(Jump), U8(8), |
304 B(Ldar), R(10), | 386 B(Ldar), R(10), |
305 /* 62 S> */ B(Return), | 387 /* 62 S> */ B(Return), |
306 B(LdaSmi), I8(-2), | |
307 B(Star), R(4), | |
308 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(9), U8(1), | |
309 B(Star), R(10), | |
310 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(9),
U8(1), | |
311 B(Star), R(11), | |
312 B(LdaZero), | |
313 B(TestEqualStrictNoFeedback), R(11), | |
314 B(JumpIfTrue), U8(28), | |
315 B(LdaSmi), I8(2), | |
316 B(TestEqualStrictNoFeedback), R(11), | |
317 B(JumpIfTrue), U8(19), | |
318 B(LdaTrue), | |
319 B(Star), R(13), | |
320 B(Mov), R(10), R(12), | |
321 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(12)
, U8(2), | |
322 B(Star), R(7), | |
323 B(LdaZero), | |
324 B(Star), R(6), | |
325 B(Jump), U8(192), | |
326 B(Ldar), R(10), | 388 B(Ldar), R(10), |
327 /* 11 E> */ B(Throw), | |
328 B(Ldar), R(closure), | |
329 B(CreateBlockContext), U8(1), | |
330 B(PushContext), R(1), | |
331 B(LdaTheHole), | |
332 B(StaCurrentContextSlot), U8(4), | |
333 /* 31 S> */ B(LdaZero), | |
334 /* 31 E> */ B(StaCurrentContextSlot), U8(4), | |
335 B(LdaImmutableCurrentContextSlot), U8(4), | |
336 /* 60 E> */ B(StaContextSlot), R(1), U8(5), U8(0), | |
337 B(LdaSmi), I8(1), | |
338 B(StaContextSlot), R(1), U8(6), U8(0), | |
339 B(StackCheck), | |
340 B(Ldar), R(closure), | |
341 B(CreateBlockContext), U8(2), | |
342 B(PushContext), R(2), | |
343 B(LdaTheHole), | |
344 B(StaCurrentContextSlot), U8(4), | |
345 B(LdaContextSlot), R(1), U8(5), U8(0), | |
346 B(StaCurrentContextSlot), U8(4), | |
347 B(LdaContextSlot), R(1), U8(6), U8(0), | |
348 B(Star), R(9), | |
349 B(LdaSmi), I8(1), | |
350 B(TestEqual), R(9), U8(3), | |
351 B(JumpIfFalse), U8(9), | |
352 B(LdaZero), | |
353 B(StaContextSlot), R(1), U8(6), U8(0), | |
354 B(Jump), U8(8), | |
355 /* 44 S> */ B(LdaCurrentContextSlot), U8(4), | |
356 B(Inc), U8(4), | |
357 /* 44 E> */ B(StaCurrentContextSlot), U8(4), | |
358 B(LdaSmi), I8(1), | |
359 B(StaContextSlot), R(1), U8(7), U8(0), | |
360 /* 36 S> */ B(LdaCurrentContextSlot), U8(4), | |
361 B(Star), R(9), | |
362 B(LdaSmi), I8(10), | |
363 /* 36 E> */ B(TestLessThan), R(9), U8(5), | |
364 B(JumpIfFalse), U8(4), | |
365 B(Jump), U8(6), | |
366 B(PopContext), R(2), | |
367 B(Jump), U8(69), | |
368 B(LdaContextSlot), R(1), U8(7), U8(0), | |
369 B(Star), R(9), | |
370 B(LdaSmi), I8(1), | |
371 B(TestEqual), R(9), U8(6), | |
372 B(JumpIfFalse), U8(34), | |
373 /* 18 E> */ B(StackCheck), | |
374 B(Ldar), R(closure), | |
375 B(CreateBlockContext), U8(3), | |
376 B(PushContext), R(3), | |
377 B(LdaTheHole), | |
378 B(StaCurrentContextSlot), U8(4), | |
379 /* 57 S> */ B(LdaContextSlot), R(3), U8(4), U8(0), | |
380 /* 57 E> */ B(StaCurrentContextSlot), U8(4), | |
381 B(PopContext), R(3), | |
382 B(LdaZero), | |
383 B(StaContextSlot), R(1), U8(7), U8(0), | |
384 B(LdaCurrentContextSlot), U8(4), | |
385 /* 60 E> */ B(StaContextSlot), R(1), U8(5), U8(0), | |
386 B(JumpLoop), U8(42), I8(1), | |
387 B(LdaContextSlot), R(1), U8(7), U8(0), | |
388 B(Star), R(9), | |
389 B(LdaSmi), I8(1), | |
390 B(TestEqual), R(9), U8(7), | |
391 B(JumpIfFalse), U8(6), | |
392 B(PopContext), R(2), | |
393 B(Jump), U8(7), | |
394 B(PopContext), R(2), | |
395 B(JumpLoop), U8(129), I8(0), | |
396 B(PopContext), R(1), | |
397 B(LdaUndefined), | |
398 B(Star), R(9), | |
399 B(LdaTrue), | |
400 B(Star), R(10), | |
401 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(9),
U8(2), | |
402 B(Star), R(7), | |
403 B(LdaZero), | |
404 B(Star), R(6), | |
405 B(Jump), U8(14), | |
406 B(LdaSmi), I8(-1), | |
407 B(Star), R(6), | |
408 B(Jump), U8(8), | |
409 B(Star), R(7), | |
410 B(LdaSmi), I8(1), | |
411 B(Star), R(6), | |
412 B(LdaTheHole), | |
413 B(SetPendingMessage), | |
414 B(Star), R(8), | |
415 B(LdaImmutableCurrentContextSlot), U8(4), | |
416 B(Star), R(9), | |
417 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(9), U8(1), | |
418 B(Ldar), R(8), | |
419 B(SetPendingMessage), | |
420 B(Ldar), R(6), | |
421 B(SwitchOnSmiNoFeedback), U8(4), U8(2), I8(0), | |
422 B(Jump), U8(8), | |
423 B(Ldar), R(7), | |
424 /* 62 S> */ B(Return), | |
425 B(Ldar), R(7), | |
426 B(ReThrow), | 389 B(ReThrow), |
427 B(LdaUndefined), | 390 B(LdaUndefined), |
428 /* 62 S> */ B(Return), | 391 /* 62 S> */ B(Return), |
429 ] | 392 ] |
430 constant pool: [ | 393 constant pool: [ |
431 Smi [52], | 394 Smi [46], |
432 FIXED_ARRAY_TYPE, | |
433 FIXED_ARRAY_TYPE, | |
434 FIXED_ARRAY_TYPE, | |
435 Smi [6], | 395 Smi [6], |
436 Smi [9], | 396 Smi [9], |
437 ] | 397 ] |
438 handlers: [ | 398 handlers: [ |
439 [51, 288, 294], | 399 [47, 204, 210], |
440 ] | 400 ] |
441 | 401 |
442 --- | 402 --- |
443 snippet: " | 403 snippet: " |
444 function* f() { | 404 function* f() { |
445 for (let x = 0; x < 10; ++x) yield x; | 405 for (let x = 0; x < 10; ++x) yield x; |
446 } | 406 } |
447 f(); | 407 f(); |
448 " | 408 " |
449 frame size: 13 | 409 frame size: 16 |
450 parameter count: 1 | 410 parameter count: 1 |
451 bytecode array length: 438 | 411 bytecode array length: 352 |
452 bytecodes: [ | 412 bytecodes: [ |
453 B(Ldar), R(new_target), | 413 B(Ldar), R(new_target), |
454 B(JumpIfUndefined), U8(25), | 414 B(JumpIfUndefined), U8(25), |
455 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), | 415 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), |
456 B(PushContext), R(4), | 416 B(PushContext), R(7), |
457 B(ResumeGenerator), R(new_target), | 417 B(ResumeGenerator), R(new_target), |
458 B(Star), R(3), | 418 B(Star), R(6), |
459 B(SwitchOnSmiNoFeedback), U8(0), U8(2), I8(0), | 419 B(SwitchOnSmiNoFeedback), U8(0), U8(2), I8(0), |
460 B(LdaSmi), I8(79), | 420 B(LdaSmi), I8(79), |
461 B(Star), R(5), | |
462 B(CallRuntime), U16(Runtime::kAbort), R(5), U8(1), | |
463 B(LdaSmi), I8(-2), | |
464 B(Star), R(3), | |
465 B(CreateFunctionContext), U8(4), | |
466 B(PushContext), R(0), | |
467 B(Mov), R(closure), R(5), | |
468 B(Mov), R(this), R(6), | |
469 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(5)
, U8(2), | |
470 B(StaCurrentContextSlot), U8(4), | |
471 /* 11 E> */ B(StackCheck), | |
472 B(Mov), R(context), R(7), | |
473 B(LdaImmutableCurrentContextSlot), U8(4), | |
474 B(Star), R(8), | |
475 B(LdaImmutableCurrentContextSlot), U8(4), | |
476 B(Star), R(9), | |
477 B(LdaZero), | |
478 /* 11 E> */ B(SuspendGenerator), R(8), U8(0), | |
479 B(Ldar), R(9), | |
480 /* 56 S> */ B(Return), | |
481 B(LdaSmi), I8(-2), | |
482 B(Star), R(3), | |
483 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(8), U8(1), | |
484 B(Star), R(9), | |
485 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8),
U8(1), | |
486 B(Star), R(10), | |
487 B(LdaZero), | |
488 B(TestEqualStrictNoFeedback), R(10), | |
489 B(JumpIfTrue), U8(28), | |
490 B(LdaSmi), I8(2), | |
491 B(TestEqualStrictNoFeedback), R(10), | |
492 B(JumpIfTrue), U8(19), | |
493 B(LdaTrue), | |
494 B(Star), R(12), | |
495 B(Mov), R(9), R(11), | |
496 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(11)
, U8(2), | |
497 B(Star), R(6), | |
498 B(LdaZero), | |
499 B(Star), R(5), | |
500 B(JumpConstant), U8(6), | |
501 B(Ldar), R(9), | |
502 /* 11 E> */ B(Throw), | |
503 B(Ldar), R(closure), | |
504 B(CreateBlockContext), U8(2), | |
505 B(PushContext), R(1), | |
506 B(LdaTheHole), | |
507 B(StaCurrentContextSlot), U8(4), | |
508 /* 31 S> */ B(LdaZero), | |
509 /* 31 E> */ B(StaCurrentContextSlot), U8(4), | |
510 B(LdaImmutableCurrentContextSlot), U8(4), | |
511 /* 54 E> */ B(StaContextSlot), R(1), U8(5), U8(0), | |
512 B(LdaSmi), I8(1), | |
513 B(StaContextSlot), R(1), U8(6), U8(0), | |
514 B(Ldar), R(3), | |
515 B(SwitchOnSmiNoFeedback), U8(3), U8(1), I8(1), | |
516 B(LdaSmi), I8(-2), | |
517 B(TestEqualStrictNoFeedback), R(3), | |
518 B(JumpIfTrue), U8(11), | |
519 B(LdaSmi), I8(79), | |
520 B(Star), R(8), | 421 B(Star), R(8), |
521 B(CallRuntime), U16(Runtime::kAbort), R(8), U8(1), | 422 B(CallRuntime), U16(Runtime::kAbort), R(8), U8(1), |
522 B(StackCheck), | 423 B(LdaSmi), I8(-2), |
523 B(Ldar), R(closure), | 424 B(Star), R(6), |
524 B(CreateBlockContext), U8(4), | 425 B(Mov), R(closure), R(8), |
525 B(PushContext), R(2), | 426 B(Mov), R(this), R(9), |
526 B(LdaTheHole), | 427 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(8)
, U8(2), |
527 B(StaCurrentContextSlot), U8(4), | 428 B(Star), R(2), |
528 B(LdaContextSlot), R(1), U8(5), U8(0), | 429 /* 11 E> */ B(StackCheck), |
529 B(StaCurrentContextSlot), U8(4), | 430 B(Mov), R(context), R(10), |
530 B(LdaContextSlot), R(1), U8(6), U8(0), | 431 B(LdaZero), |
| 432 B(Mov), R(2), R(12), |
| 433 B(Mov), R(2), R(11), |
| 434 /* 11 E> */ B(SuspendGenerator), R(11), U8(0), |
| 435 B(Ldar), R(12), |
| 436 /* 56 S> */ B(Return), |
| 437 B(LdaSmi), I8(-2), |
| 438 B(Star), R(6), |
| 439 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(11), U8(1), |
| 440 B(Star), R(12), |
| 441 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(11)
, U8(1), |
| 442 B(Star), R(13), |
| 443 B(LdaZero), |
| 444 B(TestEqualStrictNoFeedback), R(13), |
| 445 B(JumpIfTrue), U8(28), |
| 446 B(LdaSmi), I8(2), |
| 447 B(TestEqualStrictNoFeedback), R(13), |
| 448 B(JumpIfTrue), U8(19), |
| 449 B(LdaTrue), |
| 450 B(Star), R(15), |
| 451 B(Mov), R(12), R(14), |
| 452 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(14)
, U8(2), |
| 453 B(Star), R(9), |
| 454 B(LdaZero), |
531 B(Star), R(8), | 455 B(Star), R(8), |
| 456 B(Jump), U8(223), |
| 457 B(Ldar), R(12), |
| 458 /* 11 E> */ B(Throw), |
| 459 /* 31 S> */ B(LdaZero), |
| 460 B(Star), R(1), |
| 461 B(Star), R(3), |
532 B(LdaSmi), I8(1), | 462 B(LdaSmi), I8(1), |
533 B(TestEqual), R(8), U8(3), | 463 B(Star), R(4), |
534 B(JumpIfFalse), U8(9), | 464 B(Ldar), R(6), |
535 B(LdaZero), | 465 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(1), |
536 B(StaContextSlot), R(1), U8(6), U8(0), | |
537 B(Jump), U8(8), | |
538 /* 44 S> */ B(LdaCurrentContextSlot), U8(4), | |
539 B(Inc), U8(4), | |
540 /* 44 E> */ B(StaCurrentContextSlot), U8(4), | |
541 B(LdaSmi), I8(1), | |
542 B(StaContextSlot), R(1), U8(7), U8(0), | |
543 /* 36 S> */ B(LdaCurrentContextSlot), U8(4), | |
544 B(Star), R(8), | |
545 B(LdaSmi), I8(10), | |
546 /* 36 E> */ B(TestLessThan), R(8), U8(5), | |
547 B(JumpIfFalse), U8(4), | |
548 B(Jump), U8(6), | |
549 B(PopContext), R(2), | |
550 B(Jump), U8(155), | |
551 B(Ldar), R(3), | |
552 B(SwitchOnSmiNoFeedback), U8(5), U8(1), I8(1), | |
553 B(LdaSmi), I8(-2), | 466 B(LdaSmi), I8(-2), |
554 B(TestEqualStrictNoFeedback), R(3), | 467 /* 54 E> */ B(TestEqualStrictNoFeedback), R(6), |
555 B(JumpIfTrue), U8(11), | 468 B(JumpIfTrue), U8(11), |
556 B(LdaSmi), I8(79), | 469 B(LdaSmi), I8(79), |
| 470 B(Star), R(11), |
| 471 B(CallRuntime), U16(Runtime::kAbort), R(11), U8(1), |
| 472 B(StackCheck), |
| 473 B(Mov), R(3), R(0), |
| 474 B(LdaSmi), I8(1), |
| 475 B(TestEqual), R(4), U8(3), |
| 476 B(JumpIfFalse), U8(7), |
| 477 B(LdaZero), |
| 478 B(Star), R(4), |
| 479 B(Jump), U8(8), |
| 480 /* 44 S> */ B(Ldar), R(0), |
| 481 B(Inc), U8(4), |
| 482 B(Star), R(0), |
| 483 B(LdaSmi), I8(1), |
| 484 B(Star), R(5), |
| 485 /* 36 S> */ B(LdaSmi), I8(10), |
| 486 /* 36 E> */ B(TestLessThan), R(0), U8(5), |
| 487 B(JumpIfFalse), U8(4), |
| 488 B(Jump), U8(4), |
| 489 B(Jump), U8(124), |
| 490 B(Ldar), R(6), |
| 491 B(SwitchOnSmiNoFeedback), U8(3), U8(1), I8(1), |
| 492 B(LdaSmi), I8(-2), |
| 493 B(TestEqualStrictNoFeedback), R(6), |
| 494 B(JumpIfTrue), U8(11), |
| 495 B(LdaSmi), I8(79), |
| 496 B(Star), R(11), |
| 497 B(CallRuntime), U16(Runtime::kAbort), R(11), U8(1), |
| 498 B(LdaSmi), I8(1), |
| 499 B(TestEqual), R(5), U8(6), |
| 500 B(JumpIfFalse), U8(84), |
| 501 /* 18 E> */ B(StackCheck), |
| 502 /* 47 S> */ B(LdaFalse), |
| 503 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), |
| 508 B(Mov), R(2), R(11), |
| 509 B(SuspendGenerator), R(11), U8(0), |
| 510 B(Ldar), R(12), |
| 511 /* 56 S> */ B(Return), |
| 512 B(LdaSmi), I8(-2), |
| 513 B(Star), R(6), |
| 514 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(11), U8(1), |
| 515 B(Star), R(12), |
| 516 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(11)
, U8(1), |
| 517 B(Star), R(13), |
| 518 B(LdaZero), |
| 519 B(TestEqualStrictNoFeedback), R(13), |
| 520 B(JumpIfTrue), U8(28), |
| 521 B(LdaSmi), I8(2), |
| 522 B(TestEqualStrictNoFeedback), R(13), |
| 523 B(JumpIfTrue), U8(19), |
| 524 B(LdaTrue), |
| 525 B(Star), R(15), |
| 526 B(Mov), R(12), R(14), |
| 527 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(14)
, U8(2), |
| 528 B(Star), R(9), |
| 529 B(LdaZero), |
557 B(Star), R(8), | 530 B(Star), R(8), |
558 B(CallRuntime), U16(Runtime::kAbort), R(8), U8(1), | 531 B(Jump), U8(57), |
559 B(LdaContextSlot), R(1), U8(7), U8(0), | 532 B(Ldar), R(12), |
| 533 /* 47 E> */ B(Throw), |
| 534 B(LdaZero), |
| 535 B(Star), R(5), |
| 536 B(Mov), R(0), R(3), |
| 537 B(Ldar), R(0), |
| 538 B(JumpLoop), U8(107), I8(1), |
| 539 B(LdaSmi), I8(1), |
| 540 /* 54 E> */ B(TestEqual), R(5), U8(7), |
| 541 B(JumpIfFalse), U8(4), |
| 542 B(Jump), U8(5), |
| 543 B(JumpLoop), U8(177), I8(0), |
| 544 B(LdaUndefined), |
| 545 B(Star), R(11), |
| 546 B(LdaTrue), |
| 547 B(Star), R(12), |
| 548 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(11)
, U8(2), |
| 549 B(Star), R(9), |
| 550 B(LdaZero), |
560 B(Star), R(8), | 551 B(Star), R(8), |
561 B(LdaSmi), I8(1), | 552 B(Jump), U8(14), |
562 B(TestEqual), R(8), U8(6), | 553 B(LdaSmi), I8(-1), |
563 B(JumpIfFalse), U8(99), | |
564 /* 18 E> */ B(StackCheck), | |
565 /* 47 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), | |
566 B(Star), R(8), | 554 B(Star), R(8), |
567 B(LdaCurrentContextSlot), U8(4), | 555 B(Jump), U8(8), |
568 B(Star), R(9), | |
569 B(LdaFalse), | |
570 B(Star), R(10), | |
571 /* 53 E> */ B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(9),
U8(2), | |
572 B(Star), R(9), | 556 B(Star), R(9), |
573 B(LdaSmi), I8(1), | 557 B(LdaSmi), I8(1), |
574 B(SuspendGenerator), R(8), U8(0), | 558 B(Star), R(8), |
| 559 B(LdaTheHole), |
| 560 B(SetPendingMessage), |
| 561 B(Star), R(10), |
| 562 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(2), U8(1), |
| 563 B(Ldar), R(10), |
| 564 B(SetPendingMessage), |
| 565 B(Ldar), R(8), |
| 566 B(SwitchOnSmiNoFeedback), U8(4), U8(2), I8(0), |
| 567 B(Jump), U8(8), |
575 B(Ldar), R(9), | 568 B(Ldar), R(9), |
576 /* 56 S> */ B(Return), | 569 /* 56 S> */ B(Return), |
577 B(LdaSmi), I8(-2), | |
578 B(Star), R(3), | |
579 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(8), U8(1), | |
580 B(Star), R(9), | |
581 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8),
U8(1), | |
582 B(Star), R(10), | |
583 B(LdaZero), | |
584 B(TestEqualStrictNoFeedback), R(10), | |
585 B(JumpIfTrue), U8(36), | |
586 B(LdaSmi), I8(2), | |
587 B(TestEqualStrictNoFeedback), R(10), | |
588 B(JumpIfTrue), U8(27), | |
589 B(LdaTrue), | |
590 B(Star), R(12), | |
591 B(Mov), R(9), R(11), | |
592 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(11)
, U8(2), | |
593 B(PopContext), R(2), | |
594 B(PopContext), R(2), | |
595 B(PopContext), R(1), | |
596 B(PopContext), R(1), | |
597 B(Star), R(6), | |
598 B(LdaZero), | |
599 B(Star), R(5), | |
600 B(Jump), U8(72), | |
601 B(Ldar), R(9), | 570 B(Ldar), R(9), |
602 /* 47 E> */ B(Throw), | |
603 B(LdaZero), | |
604 B(StaContextSlot), R(1), U8(7), U8(0), | |
605 B(LdaCurrentContextSlot), U8(4), | |
606 /* 54 E> */ B(StaContextSlot), R(1), U8(5), U8(0), | |
607 B(JumpLoop), U8(128), I8(1), | |
608 B(LdaContextSlot), R(1), U8(7), U8(0), | |
609 B(Star), R(8), | |
610 B(LdaSmi), I8(1), | |
611 B(TestEqual), R(8), U8(7), | |
612 B(JumpIfFalse), U8(6), | |
613 B(PopContext), R(2), | |
614 B(Jump), U8(7), | |
615 B(PopContext), R(2), | |
616 B(JumpLoop), U8(236), I8(0), | |
617 B(PopContext), R(1), | |
618 B(LdaUndefined), | |
619 B(Star), R(8), | |
620 B(LdaTrue), | |
621 B(Star), R(9), | |
622 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(8),
U8(2), | |
623 B(Star), R(6), | |
624 B(LdaZero), | |
625 B(Star), R(5), | |
626 B(Jump), U8(14), | |
627 B(LdaSmi), I8(-1), | |
628 B(Star), R(5), | |
629 B(Jump), U8(8), | |
630 B(Star), R(6), | |
631 B(LdaSmi), I8(1), | |
632 B(Star), R(5), | |
633 B(LdaTheHole), | |
634 B(SetPendingMessage), | |
635 B(Star), R(7), | |
636 B(LdaImmutableCurrentContextSlot), U8(4), | |
637 B(Star), R(8), | |
638 B(InvokeIntrinsic), U8(Runtime::k_GeneratorClose), R(8), U8(1), | |
639 B(Ldar), R(7), | |
640 B(SetPendingMessage), | |
641 B(Ldar), R(5), | |
642 B(SwitchOnSmiNoFeedback), U8(7), U8(2), I8(0), | |
643 B(Jump), U8(8), | |
644 B(Ldar), R(6), | |
645 /* 56 S> */ B(Return), | |
646 B(Ldar), R(6), | |
647 B(ReThrow), | 571 B(ReThrow), |
648 B(LdaUndefined), | 572 B(LdaUndefined), |
649 /* 56 S> */ B(Return), | 573 /* 56 S> */ B(Return), |
650 ] | 574 ] |
651 constant pool: [ | 575 constant pool: [ |
652 Smi [52], | 576 Smi [46], |
653 Smi [123], | 577 Smi [102], |
654 FIXED_ARRAY_TYPE, | 578 Smi [56], |
655 Smi [84], | 579 Smi [50], |
656 FIXED_ARRAY_TYPE, | |
657 Smi [60], | |
658 Smi [299], | |
659 Smi [6], | 580 Smi [6], |
660 Smi [9], | 581 Smi [9], |
661 ] | 582 ] |
662 handlers: [ | 583 handlers: [ |
663 [51, 395, 401], | 584 [47, 313, 319], |
664 ] | 585 ] |
665 | 586 |
666 --- | 587 --- |
667 snippet: " | 588 snippet: " |
668 async function f() { | 589 async function f() { |
669 for (let x = 0; x < 10; ++x) { let y = x; } | 590 for (let x = 0; x < 10; ++x) { let y = x; } |
670 } | 591 } |
671 f(); | 592 f(); |
672 " | 593 " |
673 frame size: 12 | 594 frame size: 17 |
674 parameter count: 1 | 595 parameter count: 1 |
675 bytecode array length: 300 | 596 bytecode array length: 209 |
676 bytecodes: [ | 597 bytecodes: [ |
677 B(CreateFunctionContext), U8(5), | |
678 B(PushContext), R(0), | |
679 /* 16 E> */ B(StackCheck), | 598 /* 16 E> */ B(StackCheck), |
680 B(LdaUndefined), | 599 B(LdaUndefined), |
| 600 B(Star), R(9), |
| 601 B(CallJSRuntime), U8(%async_function_promise_create), R(9), U8(1
), |
| 602 B(Star), R(7), |
| 603 B(Mov), R(context), R(11), |
| 604 B(Mov), R(context), R(12), |
| 605 /* 36 S> */ B(LdaZero), |
| 606 B(Star), R(2), |
681 B(Star), R(4), | 607 B(Star), R(4), |
682 B(CallJSRuntime), U8(%async_function_promise_create), R(4), U8(1
), | 608 B(LdaSmi), I8(1), |
683 B(StaCurrentContextSlot), U8(8), | 609 B(Star), R(5), |
684 B(Mov), R(context), R(6), | 610 /* 65 E> */ B(StackCheck), |
685 B(Mov), R(context), R(7), | 611 B(Mov), R(4), R(1), |
| 612 B(LdaSmi), I8(1), |
| 613 B(TestEqual), R(5), U8(3), |
| 614 B(JumpIfFalse), U8(7), |
| 615 B(LdaZero), |
| 616 B(Star), R(5), |
| 617 B(Jump), U8(8), |
| 618 /* 49 S> */ B(Ldar), R(1), |
| 619 B(Inc), U8(4), |
| 620 B(Star), R(1), |
| 621 B(LdaSmi), I8(1), |
| 622 B(Star), R(6), |
| 623 /* 41 S> */ B(LdaSmi), I8(10), |
| 624 /* 41 E> */ B(TestLessThan), R(1), U8(5), |
| 625 B(JumpIfFalse), U8(4), |
| 626 B(Jump), U8(4), |
| 627 B(Jump), U8(36), |
| 628 B(LdaSmi), I8(1), |
| 629 B(TestEqual), R(6), U8(6), |
| 630 B(JumpIfFalse), U8(17), |
| 631 /* 23 E> */ B(StackCheck), |
| 632 /* 62 S> */ B(Mov), R(1), R(0), |
| 633 B(LdaZero), |
| 634 B(Star), R(6), |
| 635 B(Mov), R(0), R(4), |
| 636 B(Ldar), R(0), |
| 637 B(JumpLoop), U8(19), I8(1), |
| 638 B(LdaSmi), I8(1), |
| 639 /* 65 E> */ B(TestEqual), R(6), U8(7), |
| 640 B(JumpIfFalse), U8(4), |
| 641 B(Jump), U8(5), |
| 642 B(JumpLoop), U8(68), I8(0), |
| 643 B(LdaUndefined), |
| 644 B(Star), R(13), |
| 645 B(LdaUndefined), |
| 646 B(Star), R(15), |
| 647 B(Mov), R(7), R(14), |
| 648 B(CallJSRuntime), U8(%promise_resolve), R(13), U8(3), |
| 649 B(LdaZero), |
| 650 B(Star), R(9), |
| 651 B(Mov), R(7), R(10), |
| 652 B(Jump), U8(61), |
| 653 B(Jump), U8(47), |
| 654 B(Star), R(13), |
686 B(Ldar), R(closure), | 655 B(Ldar), R(closure), |
687 B(CreateBlockContext), U8(0), | 656 B(CreateCatchContext), R(13), U8(0), U8(1), |
688 B(PushContext), R(1), | 657 B(Star), R(12), |
689 B(LdaTheHole), | |
690 B(StaCurrentContextSlot), U8(4), | |
691 /* 36 S> */ B(LdaZero), | |
692 /* 36 E> */ B(StaCurrentContextSlot), U8(4), | |
693 B(LdaImmutableCurrentContextSlot), U8(4), | |
694 /* 65 E> */ B(StaContextSlot), R(1), U8(5), U8(0), | |
695 B(LdaSmi), I8(1), | |
696 B(StaContextSlot), R(1), U8(6), U8(0), | |
697 B(StackCheck), | |
698 B(Ldar), R(closure), | |
699 B(CreateBlockContext), U8(1), | |
700 B(PushContext), R(2), | |
701 B(LdaTheHole), | |
702 B(StaCurrentContextSlot), U8(4), | |
703 B(LdaContextSlot), R(1), U8(5), U8(0), | |
704 B(StaCurrentContextSlot), U8(4), | |
705 B(LdaContextSlot), R(1), U8(6), U8(0), | |
706 B(Star), R(8), | |
707 B(LdaSmi), I8(1), | |
708 B(TestEqual), R(8), U8(3), | |
709 B(JumpIfFalse), U8(9), | |
710 B(LdaZero), | |
711 B(StaContextSlot), R(1), U8(6), U8(0), | |
712 B(Jump), U8(8), | |
713 /* 49 S> */ B(LdaCurrentContextSlot), U8(4), | |
714 B(Inc), U8(4), | |
715 /* 49 E> */ B(StaCurrentContextSlot), U8(4), | |
716 B(LdaSmi), I8(1), | |
717 B(StaContextSlot), R(1), U8(7), U8(0), | |
718 /* 41 S> */ B(LdaCurrentContextSlot), U8(4), | |
719 B(Star), R(8), | |
720 B(LdaSmi), I8(10), | |
721 /* 41 E> */ B(TestLessThan), R(8), U8(5), | |
722 B(JumpIfFalse), U8(4), | |
723 B(Jump), U8(6), | |
724 B(PopContext), R(2), | |
725 B(Jump), U8(69), | |
726 B(LdaContextSlot), R(1), U8(7), U8(0), | |
727 B(Star), R(8), | |
728 B(LdaSmi), I8(1), | |
729 B(TestEqual), R(8), U8(6), | |
730 B(JumpIfFalse), U8(34), | |
731 /* 23 E> */ B(StackCheck), | |
732 B(Ldar), R(closure), | |
733 B(CreateBlockContext), U8(2), | |
734 B(PushContext), R(3), | |
735 B(LdaTheHole), | |
736 B(StaCurrentContextSlot), U8(4), | |
737 /* 62 S> */ B(LdaContextSlot), R(3), U8(4), U8(0), | |
738 /* 62 E> */ B(StaCurrentContextSlot), U8(4), | |
739 B(PopContext), R(3), | |
740 B(LdaZero), | |
741 B(StaContextSlot), R(1), U8(7), U8(0), | |
742 B(LdaCurrentContextSlot), U8(4), | |
743 /* 65 E> */ B(StaContextSlot), R(1), U8(5), U8(0), | |
744 B(JumpLoop), U8(42), I8(1), | |
745 B(LdaContextSlot), R(1), U8(7), U8(0), | |
746 B(Star), R(8), | |
747 B(LdaSmi), I8(1), | |
748 B(TestEqual), R(8), U8(7), | |
749 B(JumpIfFalse), U8(6), | |
750 B(PopContext), R(2), | |
751 B(Jump), U8(7), | |
752 B(PopContext), R(2), | |
753 B(JumpLoop), U8(129), I8(0), | |
754 B(PopContext), R(1), | |
755 B(LdaUndefined), | |
756 B(Star), R(8), | |
757 B(LdaCurrentContextSlot), U8(8), | |
758 B(Star), R(9), | |
759 B(LdaUndefined), | |
760 B(Star), R(10), | |
761 B(CallJSRuntime), U8(%promise_resolve), R(8), U8(3), | |
762 B(LdaCurrentContextSlot), U8(8), | |
763 B(Star), R(5), | |
764 B(LdaZero), | |
765 B(Star), R(4), | |
766 B(Jump), U8(67), | |
767 B(Jump), U8(53), | |
768 B(Star), R(8), | |
769 B(Ldar), R(closure), | |
770 B(CreateCatchContext), R(8), U8(3), U8(4), | |
771 B(Star), R(7), | |
772 B(LdaTheHole), | 658 B(LdaTheHole), |
773 B(SetPendingMessage), | 659 B(SetPendingMessage), |
774 B(Ldar), R(7), | 660 B(Ldar), R(12), |
775 B(PushContext), R(1), | 661 B(PushContext), R(8), |
776 B(LdaUndefined), | 662 B(LdaUndefined), |
777 B(Star), R(8), | 663 B(Star), R(13), |
778 B(LdaContextSlot), R(1), U8(8), U8(0), | 664 B(LdaImmutableCurrentContextSlot), U8(4), |
| 665 B(Star), R(15), |
| 666 B(LdaFalse), |
| 667 B(Star), R(16), |
| 668 B(Mov), R(7), R(14), |
| 669 B(CallJSRuntime), U8(%promise_internal_reject), R(13), U8(4), |
| 670 B(PopContext), R(8), |
| 671 B(PopContext), R(8), |
| 672 B(LdaZero), |
779 B(Star), R(9), | 673 B(Star), R(9), |
780 B(LdaImmutableCurrentContextSlot), U8(4), | 674 B(Mov), R(7), R(10), |
781 B(Star), R(10), | |
782 B(LdaFalse), | |
783 B(Star), R(11), | |
784 B(CallJSRuntime), U8(%promise_internal_reject), R(8), U8(4), | |
785 B(LdaContextSlot), R(1), U8(8), U8(0), | |
786 B(PopContext), R(1), | |
787 B(PopContext), R(1), | |
788 B(Star), R(5), | |
789 B(LdaZero), | |
790 B(Star), R(4), | |
791 B(Jump), U8(14), | 675 B(Jump), U8(14), |
792 B(LdaSmi), I8(-1), | 676 B(LdaSmi), I8(-1), |
793 B(Star), R(4), | 677 B(Star), R(9), |
794 B(Jump), U8(8), | 678 B(Jump), U8(8), |
795 B(Star), R(5), | 679 B(Star), R(10), |
796 B(LdaSmi), I8(1), | 680 B(LdaSmi), I8(1), |
797 B(Star), R(4), | 681 B(Star), R(9), |
798 B(LdaTheHole), | 682 B(LdaTheHole), |
799 B(SetPendingMessage), | 683 B(SetPendingMessage), |
800 B(Star), R(6), | 684 B(Star), R(11), |
801 B(LdaUndefined), | 685 B(LdaUndefined), |
802 B(Star), R(7), | 686 B(Star), R(12), |
803 B(LdaCurrentContextSlot), U8(8), | 687 B(Mov), R(7), R(13), |
804 B(Star), R(8), | 688 B(CallJSRuntime), U8(%async_function_promise_release), R(12), U8
(2), |
805 B(CallJSRuntime), U8(%async_function_promise_release), R(7), U8(
2), | 689 B(Ldar), R(11), |
806 B(Ldar), R(6), | |
807 B(SetPendingMessage), | 690 B(SetPendingMessage), |
808 B(Ldar), R(4), | 691 B(Ldar), R(9), |
809 B(SwitchOnSmiNoFeedback), U8(5), U8(2), I8(0), | 692 B(SwitchOnSmiNoFeedback), U8(2), U8(2), I8(0), |
810 B(Jump), U8(8), | 693 B(Jump), U8(8), |
811 B(Ldar), R(5), | 694 B(Ldar), R(10), |
812 /* 67 S> */ B(Return), | 695 /* 67 S> */ B(Return), |
813 B(Ldar), R(5), | 696 B(Ldar), R(10), |
814 B(ReThrow), | 697 B(ReThrow), |
815 B(LdaUndefined), | 698 B(LdaUndefined), |
816 /* 67 S> */ B(Return), | 699 /* 67 S> */ B(Return), |
817 ] | 700 ] |
818 constant pool: [ | 701 constant pool: [ |
819 FIXED_ARRAY_TYPE, | |
820 FIXED_ARRAY_TYPE, | |
821 FIXED_ARRAY_TYPE, | |
822 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 702 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
823 FIXED_ARRAY_TYPE, | 703 FIXED_ARRAY_TYPE, |
824 Smi [6], | 704 Smi [6], |
825 Smi [9], | 705 Smi [9], |
826 ] | 706 ] |
827 handlers: [ | 707 handlers: [ |
828 [17, 254, 260], | 708 [13, 164, 170], |
829 [20, 201, 203], | 709 [16, 117, 119], |
830 ] | 710 ] |
831 | 711 |
832 --- | 712 --- |
833 snippet: " | 713 snippet: " |
834 async function f() { | 714 async function f() { |
835 for (let x = 0; x < 10; ++x) await x; | 715 for (let x = 0; x < 10; ++x) await x; |
836 } | 716 } |
837 f(); | 717 f(); |
838 " | 718 " |
839 frame size: 14 | 719 frame size: 20 |
840 parameter count: 1 | 720 parameter count: 1 |
841 bytecode array length: 480 | 721 bytecode array length: 371 |
842 bytecodes: [ | 722 bytecodes: [ |
843 B(Ldar), R(new_target), | 723 B(Ldar), R(new_target), |
844 B(JumpIfUndefined), U8(25), | 724 B(JumpIfUndefined), U8(25), |
845 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), | 725 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_ta
rget), U8(1), |
846 B(PushContext), R(4), | 726 B(PushContext), R(10), |
847 B(ResumeGenerator), R(new_target), | 727 B(ResumeGenerator), R(new_target), |
848 B(Star), R(3), | 728 B(Star), R(9), |
849 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 729 B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), |
850 B(LdaSmi), I8(79), | 730 B(LdaSmi), I8(79), |
851 B(Star), R(5), | 731 B(Star), R(11), |
852 B(CallRuntime), U16(Runtime::kAbort), R(5), U8(1), | 732 B(CallRuntime), U16(Runtime::kAbort), R(11), U8(1), |
853 B(LdaSmi), I8(-2), | 733 B(LdaSmi), I8(-2), |
854 B(Star), R(3), | 734 B(Star), R(9), |
855 B(CreateFunctionContext), U8(6), | 735 B(Mov), R(closure), R(11), |
856 B(PushContext), R(0), | 736 B(Mov), R(this), R(12), |
857 B(Mov), R(closure), R(5), | 737 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(11
), U8(2), |
858 B(Mov), R(this), R(6), | 738 B(Star), R(2), |
859 B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(5)
, U8(2), | |
860 B(StaCurrentContextSlot), U8(4), | |
861 /* 16 E> */ B(StackCheck), | 739 /* 16 E> */ B(StackCheck), |
862 B(LdaUndefined), | 740 B(LdaUndefined), |
| 741 B(Star), R(11), |
| 742 B(CallJSRuntime), U8(%async_function_promise_create), R(11), U8(
1), |
| 743 B(Star), R(4), |
| 744 B(Mov), R(context), R(13), |
| 745 B(Mov), R(context), R(14), |
| 746 /* 36 S> */ B(LdaZero), |
| 747 B(Star), R(1), |
863 B(Star), R(5), | 748 B(Star), R(5), |
864 B(CallJSRuntime), U8(%async_function_promise_create), R(5), U8(1
), | |
865 B(StaCurrentContextSlot), U8(6), | |
866 B(Mov), R(context), R(7), | |
867 B(Mov), R(context), R(8), | |
868 B(Ldar), R(closure), | |
869 B(CreateBlockContext), U8(1), | |
870 B(PushContext), R(1), | |
871 B(LdaTheHole), | |
872 B(StaCurrentContextSlot), U8(4), | |
873 /* 36 S> */ B(LdaZero), | |
874 /* 36 E> */ B(StaCurrentContextSlot), U8(4), | |
875 B(LdaImmutableCurrentContextSlot), U8(4), | |
876 /* 59 E> */ B(StaContextSlot), R(1), U8(7), U8(0), | |
877 B(LdaSmi), I8(1), | 749 B(LdaSmi), I8(1), |
878 B(StaContextSlot), R(1), U8(8), U8(0), | 750 B(Star), R(6), |
879 B(Ldar), R(3), | 751 B(Ldar), R(9), |
| 752 B(SwitchOnSmiNoFeedback), U8(1), U8(1), I8(0), |
| 753 B(LdaSmi), I8(-2), |
| 754 /* 59 E> */ B(TestEqualStrictNoFeedback), R(9), |
| 755 B(JumpIfTrue), U8(11), |
| 756 B(LdaSmi), I8(79), |
| 757 B(Star), R(15), |
| 758 B(CallRuntime), U16(Runtime::kAbort), R(15), U8(1), |
| 759 B(StackCheck), |
| 760 B(Mov), R(5), R(0), |
| 761 B(LdaSmi), I8(1), |
| 762 B(TestEqual), R(6), U8(3), |
| 763 B(JumpIfFalse), U8(7), |
| 764 B(LdaZero), |
| 765 B(Star), R(6), |
| 766 B(Jump), U8(8), |
| 767 /* 49 S> */ B(Ldar), R(0), |
| 768 B(Inc), U8(4), |
| 769 B(Star), R(0), |
| 770 B(LdaSmi), I8(1), |
| 771 B(Star), R(7), |
| 772 /* 41 S> */ B(LdaSmi), I8(10), |
| 773 /* 41 E> */ B(TestLessThan), R(0), U8(5), |
| 774 B(JumpIfFalse), U8(4), |
| 775 B(Jump), U8(4), |
| 776 B(Jump), U8(134), |
| 777 B(Ldar), R(9), |
880 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(0), | 778 B(SwitchOnSmiNoFeedback), U8(2), U8(1), I8(0), |
881 B(LdaSmi), I8(-2), | 779 B(LdaSmi), I8(-2), |
882 B(TestEqualStrictNoFeedback), R(3), | 780 B(TestEqualStrictNoFeedback), R(9), |
883 B(JumpIfTrue), U8(11), | 781 B(JumpIfTrue), U8(11), |
884 B(LdaSmi), I8(79), | 782 B(LdaSmi), I8(79), |
885 B(Star), R(9), | 783 B(Star), R(15), |
886 B(CallRuntime), U16(Runtime::kAbort), R(9), U8(1), | 784 B(CallRuntime), U16(Runtime::kAbort), R(15), U8(1), |
887 B(StackCheck), | |
888 B(Ldar), R(closure), | |
889 B(CreateBlockContext), U8(3), | |
890 B(PushContext), R(2), | |
891 B(LdaTheHole), | |
892 B(StaCurrentContextSlot), U8(4), | |
893 B(LdaContextSlot), R(1), U8(7), U8(0), | |
894 B(StaCurrentContextSlot), U8(4), | |
895 B(LdaContextSlot), R(1), U8(8), U8(0), | |
896 B(Star), R(9), | |
897 B(LdaSmi), I8(1), | 785 B(LdaSmi), I8(1), |
898 B(TestEqual), R(9), U8(3), | 786 B(TestEqual), R(7), U8(6), |
899 B(JumpIfFalse), U8(9), | 787 B(JumpIfFalse), U8(94), |
| 788 /* 23 E> */ B(StackCheck), |
| 789 /* 52 S> */ B(Nop), |
| 790 /* 58 S> */ B(Mov), R(0), R(3), |
| 791 /* 52 S> */ B(LdaUndefined), |
| 792 B(Star), R(16), |
| 793 B(Mov), R(2), R(17), |
| 794 B(Mov), R(0), R(18), |
| 795 B(Mov), R(4), R(19), |
| 796 B(CallJSRuntime), U8(%async_function_await_uncaught), R(16), U8(
4), |
900 B(LdaZero), | 797 B(LdaZero), |
901 B(StaContextSlot), R(1), U8(8), U8(0), | 798 B(Mov), R(2), R(15), |
902 B(Jump), U8(8), | 799 B(Mov), R(4), R(16), |
903 /* 49 S> */ B(LdaCurrentContextSlot), U8(4), | 800 B(SuspendGenerator), R(15), U8(2), |
904 B(Inc), U8(4), | 801 B(Ldar), R(16), |
905 /* 49 E> */ B(StaCurrentContextSlot), U8(4), | |
906 B(LdaSmi), I8(1), | |
907 B(StaContextSlot), R(1), U8(9), U8(0), | |
908 /* 41 S> */ B(LdaCurrentContextSlot), U8(4), | |
909 B(Star), R(9), | |
910 B(LdaSmi), I8(10), | |
911 /* 41 E> */ B(TestLessThan), R(9), U8(5), | |
912 B(JumpIfFalse), U8(4), | |
913 B(Jump), U8(6), | |
914 B(PopContext), R(2), | |
915 B(Jump), U8(185), | |
916 B(Ldar), R(3), | |
917 B(SwitchOnSmiNoFeedback), U8(4), U8(1), I8(0), | |
918 B(LdaSmi), I8(-2), | |
919 B(TestEqualStrictNoFeedback), R(3), | |
920 B(JumpIfTrue), U8(11), | |
921 B(LdaSmi), I8(79), | |
922 B(Star), R(9), | |
923 B(CallRuntime), U16(Runtime::kAbort), R(9), U8(1), | |
924 B(LdaContextSlot), R(1), U8(9), U8(0), | |
925 B(Star), R(9), | |
926 B(LdaSmi), I8(1), | |
927 B(TestEqual), R(9), U8(6), | |
928 B(JumpIfFalse), U8(126), | |
929 /* 23 E> */ B(StackCheck), | |
930 /* 52 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), | |
931 B(Star), R(9), | |
932 /* 58 S> */ B(LdaCurrentContextSlot), U8(4), | |
933 B(StaContextSlot), R(1), U8(5), U8(0), | |
934 /* 52 S> */ B(LdaUndefined), | |
935 B(Star), R(10), | |
936 B(LdaImmutableContextSlot), R(1), U8(4), U8(0), | |
937 B(Star), R(11), | |
938 B(LdaContextSlot), R(1), U8(5), U8(0), | |
939 B(Star), R(12), | |
940 B(LdaContextSlot), R(1), U8(6), U8(0), | |
941 B(Star), R(13), | |
942 B(CallJSRuntime), U8(%async_function_await_uncaught), R(10), U8(
4), | |
943 B(LdaContextSlot), R(1), U8(6), U8(0), | |
944 B(Star), R(10), | |
945 B(LdaZero), | |
946 B(SuspendGenerator), R(9), U8(2), | |
947 B(Ldar), R(10), | |
948 /* 61 S> */ B(Return), | 802 /* 61 S> */ B(Return), |
949 B(LdaSmi), I8(-2), | 803 B(LdaSmi), I8(-2), |
950 B(Star), R(3), | 804 B(Star), R(9), |
951 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(9), U8(1), | 805 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos),
R(15), U8(1), |
952 B(Star), R(10), | 806 B(Star), R(16), |
953 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(9),
U8(1), | 807 B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(15)
, U8(1), |
| 808 B(Star), R(17), |
| 809 B(LdaZero), |
| 810 B(TestEqualStrictNoFeedback), R(17), |
| 811 B(JumpIfTrue), U8(28), |
| 812 B(LdaSmi), I8(2), |
| 813 B(TestEqualStrictNoFeedback), R(17), |
| 814 B(JumpIfTrue), U8(19), |
| 815 B(LdaTrue), |
| 816 B(Star), R(19), |
| 817 B(Mov), R(16), R(18), |
| 818 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(18)
, U8(2), |
| 819 B(Star), R(12), |
| 820 B(LdaZero), |
954 B(Star), R(11), | 821 B(Star), R(11), |
955 B(LdaZero), | 822 B(Jump), U8(108), |
956 B(TestEqualStrictNoFeedback), R(11), | 823 B(Ldar), R(16), |
957 B(JumpIfTrue), U8(40), | |
958 B(LdaSmi), I8(2), | |
959 B(TestEqualStrictNoFeedback), R(11), | |
960 B(JumpIfTrue), U8(31), | |
961 B(LdaTrue), | |
962 B(Star), R(13), | |
963 B(Mov), R(10), R(12), | |
964 B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(12)
, U8(2), | |
965 B(PopContext), R(2), | |
966 B(PopContext), R(2), | |
967 B(PopContext), R(1), | |
968 B(PopContext), R(1), | |
969 B(PopContext), R(1), | |
970 B(PopContext), R(1), | |
971 B(Star), R(6), | |
972 B(LdaZero), | |
973 B(Star), R(5), | |
974 B(Jump), U8(134), | |
975 B(Ldar), R(10), | |
976 B(ReThrow), | 824 B(ReThrow), |
977 B(LdaZero), | 825 B(LdaZero), |
978 B(StaContextSlot), R(1), U8(9), U8(0), | 826 B(Star), R(7), |
979 B(LdaCurrentContextSlot), U8(4), | 827 B(Mov), R(0), R(5), |
980 /* 59 E> */ B(StaContextSlot), R(1), U8(7), U8(0), | 828 B(Ldar), R(0), |
981 B(JumpLoop), U8(155), I8(1), | 829 B(JumpLoop), U8(117), I8(1), |
982 B(LdaContextSlot), R(1), U8(9), U8(0), | |
983 B(Star), R(9), | |
984 B(LdaSmi), I8(1), | 830 B(LdaSmi), I8(1), |
985 B(TestEqual), R(9), U8(7), | 831 /* 59 E> */ B(TestEqual), R(7), U8(7), |
986 B(JumpIfFalse), U8(6), | 832 B(JumpIfFalse), U8(4), |
987 B(PopContext), R(2), | 833 B(Jump), U8(5), |
988 B(Jump), U8(10), | 834 B(JumpLoop), U8(187), I8(0), |
989 B(PopContext), R(2), | |
990 B(Wide), B(JumpLoop), U16(264), I16(0), | |
991 B(PopContext), R(1), | |
992 B(LdaUndefined), | 835 B(LdaUndefined), |
993 B(Star), R(9), | 836 B(Star), R(15), |
994 B(LdaCurrentContextSlot), U8(6), | |
995 B(Star), R(10), | |
996 B(LdaUndefined), | 837 B(LdaUndefined), |
| 838 B(Star), R(17), |
| 839 B(Mov), R(4), R(16), |
| 840 B(CallJSRuntime), U8(%promise_resolve), R(15), U8(3), |
| 841 B(LdaZero), |
997 B(Star), R(11), | 842 B(Star), R(11), |
998 B(CallJSRuntime), U8(%promise_resolve), R(9), U8(3), | 843 B(Mov), R(4), R(12), |
999 B(LdaCurrentContextSlot), U8(6), | 844 B(Jump), U8(61), |
1000 B(Star), R(6), | 845 B(Jump), U8(47), |
1001 B(LdaZero), | 846 B(Star), R(15), |
1002 B(Star), R(5), | |
1003 B(Jump), U8(67), | |
1004 B(Jump), U8(53), | |
1005 B(Star), R(9), | |
1006 B(Ldar), R(closure), | 847 B(Ldar), R(closure), |
1007 B(CreateCatchContext), R(9), U8(5), U8(6), | 848 B(CreateCatchContext), R(15), U8(3), U8(4), |
1008 B(Star), R(8), | 849 B(Star), R(14), |
1009 B(LdaTheHole), | 850 B(LdaTheHole), |
1010 B(SetPendingMessage), | 851 B(SetPendingMessage), |
1011 B(Ldar), R(8), | 852 B(Ldar), R(14), |
1012 B(PushContext), R(1), | 853 B(PushContext), R(8), |
1013 B(LdaUndefined), | 854 B(LdaUndefined), |
1014 B(Star), R(9), | 855 B(Star), R(15), |
1015 B(LdaContextSlot), R(1), U8(6), U8(0), | |
1016 B(Star), R(10), | |
1017 B(LdaImmutableCurrentContextSlot), U8(4), | 856 B(LdaImmutableCurrentContextSlot), U8(4), |
| 857 B(Star), R(17), |
| 858 B(LdaFalse), |
| 859 B(Star), R(18), |
| 860 B(Mov), R(4), R(16), |
| 861 B(CallJSRuntime), U8(%promise_internal_reject), R(15), U8(4), |
| 862 B(PopContext), R(8), |
| 863 B(PopContext), R(8), |
| 864 B(LdaZero), |
1018 B(Star), R(11), | 865 B(Star), R(11), |
1019 B(LdaFalse), | 866 B(Mov), R(4), R(12), |
1020 B(Star), R(12), | |
1021 B(CallJSRuntime), U8(%promise_internal_reject), R(9), U8(4), | |
1022 B(LdaContextSlot), R(1), U8(6), U8(0), | |
1023 B(PopContext), R(1), | |
1024 B(PopContext), R(1), | |
1025 B(Star), R(6), | |
1026 B(LdaZero), | |
1027 B(Star), R(5), | |
1028 B(Jump), U8(14), | 867 B(Jump), U8(14), |
1029 B(LdaSmi), I8(-1), | 868 B(LdaSmi), I8(-1), |
1030 B(Star), R(5), | 869 B(Star), R(11), |
1031 B(Jump), U8(8), | 870 B(Jump), U8(8), |
1032 B(Star), R(6), | 871 B(Star), R(12), |
1033 B(LdaSmi), I8(1), | 872 B(LdaSmi), I8(1), |
1034 B(Star), R(5), | 873 B(Star), R(11), |
1035 B(LdaTheHole), | 874 B(LdaTheHole), |
1036 B(SetPendingMessage), | 875 B(SetPendingMessage), |
1037 B(Star), R(7), | 876 B(Star), R(13), |
1038 B(LdaUndefined), | 877 B(LdaUndefined), |
1039 B(Star), R(8), | 878 B(Star), R(14), |
1040 B(LdaCurrentContextSlot), U8(6), | 879 B(Mov), R(4), R(15), |
1041 B(Star), R(9), | 880 B(CallJSRuntime), U8(%async_function_promise_release), R(14), U8
(2), |
1042 B(CallJSRuntime), U8(%async_function_promise_release), R(8), U8(
2), | 881 B(Ldar), R(13), |
1043 B(Ldar), R(7), | |
1044 B(SetPendingMessage), | 882 B(SetPendingMessage), |
1045 B(Ldar), R(5), | 883 B(Ldar), R(11), |
1046 B(SwitchOnSmiNoFeedback), U8(7), U8(2), I8(0), | 884 B(SwitchOnSmiNoFeedback), U8(5), U8(2), I8(0), |
1047 B(Jump), U8(8), | 885 B(Jump), U8(8), |
1048 B(Ldar), R(6), | 886 B(Ldar), R(12), |
1049 /* 61 S> */ B(Return), | 887 /* 61 S> */ B(Return), |
1050 B(Ldar), R(6), | 888 B(Ldar), R(12), |
1051 B(ReThrow), | 889 B(ReThrow), |
1052 B(LdaUndefined), | 890 B(LdaUndefined), |
1053 /* 61 S> */ B(Return), | 891 /* 61 S> */ B(Return), |
1054 ] | 892 ] |
1055 constant pool: [ | 893 constant pool: [ |
1056 Smi [73], | 894 Smi [54], |
1057 FIXED_ARRAY_TYPE, | 895 Smi [56], |
1058 Smi [84], | 896 Smi [60], |
1059 FIXED_ARRAY_TYPE, | |
1060 Smi [83], | |
1061 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], | 897 ONE_BYTE_INTERNALIZED_STRING_TYPE [".catch"], |
1062 FIXED_ARRAY_TYPE, | 898 FIXED_ARRAY_TYPE, |
1063 Smi [6], | 899 Smi [6], |
1064 Smi [9], | 900 Smi [9], |
1065 ] | 901 ] |
1066 handlers: [ | 902 handlers: [ |
1067 [60, 434, 440], | 903 [56, 326, 332], |
1068 [63, 381, 383], | 904 [59, 279, 281], |
1069 ] | 905 ] |
1070 | 906 |
OLD | NEW |