| Index: test/cctest/interpreter/bytecode_expectations/Modules.golden | 
| diff --git a/test/cctest/interpreter/bytecode_expectations/Modules.golden b/test/cctest/interpreter/bytecode_expectations/Modules.golden | 
| index 2a4400904363d5179c9ba857d486660f7a62ef16..de2ef763614602124c9124f726017063da861cc9 100644 | 
| --- a/test/cctest/interpreter/bytecode_expectations/Modules.golden | 
| +++ b/test/cctest/interpreter/bytecode_expectations/Modules.golden | 
| @@ -11,70 +11,73 @@ top level: yes | 
| snippet: " | 
| import \"bar\"; | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 130 | 
| +bytecode array length: 141 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| +                B(Star), R(0), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   13 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   13 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| B(StaCurrentContextSlot), U8(5), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   13 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [59], | 
| +  Smi [63], | 
| FIXED_ARRAY_TYPE, | 
| ] | 
| handlers: [ | 
| @@ -84,70 +87,73 @@ handlers: [ | 
| snippet: " | 
| import {foo} from \"bar\"; | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 130 | 
| +bytecode array length: 141 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| +                B(Star), R(0), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   24 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   24 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| B(StaCurrentContextSlot), U8(5), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   24 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [59], | 
| +  Smi [63], | 
| FIXED_ARRAY_TYPE, | 
| ] | 
| handlers: [ | 
| @@ -159,71 +165,74 @@ snippet: " | 
| goo(42); | 
| { let x; { goo(42) } }; | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 192 | 
| +bytecode array length: 203 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| +                B(Star), R(0), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   64 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   64 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| /*   32 S> */ B(LdaModuleVariable), I8(-1), U8(0), | 
| B(JumpIfNotHole), U8(11), | 
| B(LdaConstant), U8(2), | 
| +                B(Star), R(5), | 
| +                B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), | 
| B(Star), R(4), | 
| -                B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), | 
| -                B(Star), R(3), | 
| B(LdaSmi), I8(42), | 
| -                B(Star), R(4), | 
| -  /*   32 E> */ B(CallUndefinedReceiver1), R(3), R(4), U8(3), | 
| +                B(Star), R(5), | 
| +  /*   32 E> */ B(CallUndefinedReceiver1), R(4), R(5), U8(3), | 
| B(Ldar), R(closure), | 
| B(CreateBlockContext), U8(3), | 
| -                B(PushContext), R(3), | 
| +                B(PushContext), R(4), | 
| B(LdaTheHole), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*   47 S> */ B(LdaUndefined), | 
| @@ -231,23 +240,23 @@ bytecodes: [ | 
| /*   52 S> */ B(LdaModuleVariable), I8(-1), U8(1), | 
| B(JumpIfNotHole), U8(11), | 
| B(LdaConstant), U8(2), | 
| +                B(Star), R(6), | 
| +                B(CallRuntime), U16(Runtime::kThrowReferenceError), R(6), U8(1), | 
| B(Star), R(5), | 
| -                B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), | 
| -                B(Star), R(4), | 
| B(LdaSmi), I8(42), | 
| -                B(Star), R(5), | 
| -  /*   52 E> */ B(CallUndefinedReceiver1), R(4), R(5), U8(5), | 
| -                B(StaContextSlot), R(3), U8(5), U8(0), | 
| -                B(PopContext), R(3), | 
| +                B(Star), R(6), | 
| +  /*   52 E> */ B(CallUndefinedReceiver1), R(5), R(6), U8(5), | 
| +                B(StaContextSlot), R(4), U8(5), U8(0), | 
| +                B(PopContext), R(4), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   64 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [59], | 
| +  Smi [63], | 
| FIXED_ARRAY_TYPE, | 
| ONE_BYTE_INTERNALIZED_STRING_TYPE ["goo"], | 
| FIXED_ARRAY_TYPE, | 
| @@ -261,58 +270,61 @@ snippet: " | 
| foo++; | 
| { let x; { foo++ } }; | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 172 | 
| +bytecode array length: 183 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| +                B(Star), R(0), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   49 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   49 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| /*   17 S> */ B(LdaSmi), I8(42), | 
| /*   17 E> */ B(StaModuleVariable), I8(1), U8(0), | 
| @@ -321,28 +333,28 @@ bytecodes: [ | 
| /*   24 E> */ B(StaModuleVariable), I8(1), U8(0), | 
| B(Ldar), R(closure), | 
| B(CreateBlockContext), U8(2), | 
| -                B(PushContext), R(3), | 
| +                B(PushContext), R(4), | 
| B(LdaTheHole), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*   34 S> */ B(LdaUndefined), | 
| /*   34 E> */ B(StaCurrentContextSlot), U8(4), | 
| /*   39 S> */ B(LdaModuleVariable), I8(1), U8(1), | 
| -                B(ToNumber), R(4), U8(4), | 
| -                B(Ldar), R(4), | 
| +                B(ToNumber), R(5), U8(4), | 
| +                B(Ldar), R(5), | 
| B(Inc), U8(4), | 
| /*   42 E> */ B(StaModuleVariable), I8(1), U8(1), | 
| -                B(Ldar), R(4), | 
| -                B(StaContextSlot), R(3), U8(5), U8(0), | 
| -                B(PopContext), R(3), | 
| +                B(Ldar), R(5), | 
| +                B(StaContextSlot), R(4), U8(5), U8(0), | 
| +                B(PopContext), R(4), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   49 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [59], | 
| +  Smi [63], | 
| FIXED_ARRAY_TYPE, | 
| FIXED_ARRAY_TYPE, | 
| ] | 
| @@ -355,60 +367,63 @@ snippet: " | 
| foo++; | 
| { let x; { foo++ } }; | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 176 | 
| +bytecode array length: 187 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| +                B(Star), R(0), | 
| B(LdaTheHole), | 
| B(StaModuleVariable), I8(1), U8(0), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   49 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   49 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| /*   17 S> */ B(LdaSmi), I8(42), | 
| /*   17 E> */ B(StaModuleVariable), I8(1), U8(0), | 
| @@ -417,28 +432,28 @@ bytecodes: [ | 
| /*   24 E> */ B(StaModuleVariable), I8(1), U8(0), | 
| B(Ldar), R(closure), | 
| B(CreateBlockContext), U8(2), | 
| -                B(PushContext), R(3), | 
| +                B(PushContext), R(4), | 
| B(LdaTheHole), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*   34 S> */ B(LdaUndefined), | 
| /*   34 E> */ B(StaCurrentContextSlot), U8(4), | 
| /*   39 S> */ B(LdaModuleVariable), I8(1), U8(1), | 
| -                B(ToNumber), R(4), U8(4), | 
| -                B(Ldar), R(4), | 
| +                B(ToNumber), R(5), U8(4), | 
| +                B(Ldar), R(5), | 
| B(Inc), U8(4), | 
| /*   42 E> */ B(StaModuleVariable), I8(1), U8(1), | 
| -                B(Ldar), R(4), | 
| -                B(StaContextSlot), R(3), U8(5), U8(0), | 
| -                B(PopContext), R(3), | 
| +                B(Ldar), R(5), | 
| +                B(StaContextSlot), R(4), U8(5), U8(0), | 
| +                B(PopContext), R(4), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   49 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [63], | 
| +  Smi [67], | 
| FIXED_ARRAY_TYPE, | 
| FIXED_ARRAY_TYPE, | 
| ] | 
| @@ -451,60 +466,63 @@ snippet: " | 
| foo++; | 
| { let x; { foo++ } }; | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 180 | 
| +bytecode array length: 191 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| +                B(Star), R(0), | 
| B(LdaTheHole), | 
| B(StaModuleVariable), I8(1), U8(0), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   51 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   51 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| /*   19 S> */ B(LdaSmi), I8(42), | 
| /*   19 E> */ B(StaModuleVariable), I8(1), U8(0), | 
| @@ -513,28 +531,28 @@ bytecodes: [ | 
| /*   26 E> */ B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0), | 
| B(Ldar), R(closure), | 
| B(CreateBlockContext), U8(2), | 
| -                B(PushContext), R(3), | 
| +                B(PushContext), R(4), | 
| B(LdaTheHole), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*   36 S> */ B(LdaUndefined), | 
| /*   36 E> */ B(StaCurrentContextSlot), U8(4), | 
| /*   41 S> */ B(LdaModuleVariable), I8(1), U8(1), | 
| -                B(ToNumber), R(4), U8(4), | 
| -                B(Ldar), R(4), | 
| +                B(ToNumber), R(5), U8(4), | 
| +                B(Ldar), R(5), | 
| B(Inc), U8(4), | 
| /*   44 E> */ B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0), | 
| -                B(Ldar), R(4), | 
| -                B(StaContextSlot), R(3), U8(5), U8(0), | 
| -                B(PopContext), R(3), | 
| +                B(Ldar), R(5), | 
| +                B(StaContextSlot), R(4), U8(5), U8(0), | 
| +                B(PopContext), R(4), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   51 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [63], | 
| +  Smi [67], | 
| FIXED_ARRAY_TYPE, | 
| FIXED_ARRAY_TYPE, | 
| ] | 
| @@ -545,74 +563,77 @@ handlers: [ | 
| snippet: " | 
| export default (function () {}); | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 141 | 
| +bytecode array length: 152 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| +                B(Star), R(0), | 
| B(LdaTheHole), | 
| B(StaModuleVariable), I8(1), U8(0), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   32 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   32 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| B(StaCurrentContextSlot), U8(5), | 
| B(CreateClosure), U8(2), U8(3), U8(0), | 
| B(StaModuleVariable), I8(1), U8(0), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   32 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [63], | 
| +  Smi [67], | 
| FIXED_ARRAY_TYPE, | 
| SHARED_FUNCTION_INFO_TYPE, | 
| ] | 
| @@ -623,86 +644,89 @@ handlers: [ | 
| snippet: " | 
| export default (class {}); | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 174 | 
| +bytecode array length: 185 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| +                B(Star), R(0), | 
| B(LdaTheHole), | 
| B(StaModuleVariable), I8(1), U8(0), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   26 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   26 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| B(StaCurrentContextSlot), U8(5), | 
| B(CreateClosure), U8(2), U8(3), U8(0), | 
| -                B(Star), R(3), | 
| -                B(LdaTheHole), | 
| B(Star), R(4), | 
| +                B(LdaTheHole), | 
| +                B(Star), R(5), | 
| B(LdaSmi), I8(16), | 
| -                B(Star), R(6), | 
| -                B(LdaSmi), I8(24), | 
| B(Star), R(7), | 
| -                B(Mov), R(3), R(5), | 
| -                B(CallRuntime), U16(Runtime::kDefineClass), R(4), U8(4), | 
| -                B(Star), R(4), | 
| -                B(CallRuntime), U16(Runtime::kInstallClassNameAccessor), R(3), U8(1), | 
| -                B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), | 
| +                B(LdaSmi), I8(24), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(4), R(6), | 
| +                B(CallRuntime), U16(Runtime::kDefineClass), R(5), U8(4), | 
| +                B(Star), R(5), | 
| +                B(CallRuntime), U16(Runtime::kInstallClassNameAccessor), R(4), U8(1), | 
| +                B(CallRuntime), U16(Runtime::kToFastProperties), R(4), U8(1), | 
| B(StaModuleVariable), I8(1), U8(0), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   26 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [63], | 
| +  Smi [67], | 
| FIXED_ARRAY_TYPE, | 
| SHARED_FUNCTION_INFO_TYPE, | 
| ] | 
| @@ -713,70 +737,73 @@ handlers: [ | 
| snippet: " | 
| export {foo as goo} from \"bar\" | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 130 | 
| +bytecode array length: 141 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| +                B(Star), R(0), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   30 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   30 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| B(StaCurrentContextSlot), U8(5), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   30 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [59], | 
| +  Smi [63], | 
| FIXED_ARRAY_TYPE, | 
| ] | 
| handlers: [ | 
| @@ -786,70 +813,73 @@ handlers: [ | 
| snippet: " | 
| export * from \"bar\" | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 130 | 
| +bytecode array length: 141 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| +                B(Star), R(0), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   19 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   19 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| B(StaCurrentContextSlot), U8(5), | 
| B(LdaCurrentContextSlot), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   19 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [59], | 
| +  Smi [63], | 
| FIXED_ARRAY_TYPE, | 
| ] | 
| handlers: [ | 
| @@ -860,84 +890,87 @@ snippet: " | 
| import * as foo from \"bar\" | 
| foo.f(foo, foo.x); | 
| " | 
| -frame size: 8 | 
| +frame size: 9 | 
| parameter count: 2 | 
| -bytecode array length: 168 | 
| +bytecode array length: 179 | 
| bytecodes: [ | 
| +                B(Mov), R(new_target), R(0), | 
| B(Ldar), R(new_target), | 
| B(JumpIfUndefined), U8(25), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), | 
| -                B(PushContext), R(1), | 
| -                B(ResumeGenerator), R(new_target), | 
| -                B(Star), R(0), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(0), U8(1), | 
| +                B(PushContext), R(2), | 
| +                B(RestoreGeneratorState), R(0), | 
| +                B(Star), R(1), | 
| B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), | 
| B(LdaSmi), I8(79), | 
| -                B(Star), R(2), | 
| -                B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), | 
| +                B(Star), R(3), | 
| +                B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| +                B(Star), R(1), | 
| B(LdaConstant), U8(1), | 
| -                B(Star), R(4), | 
| -                B(Mov), R(arg0), R(2), | 
| -                B(Mov), R(closure), R(3), | 
| -                B(CallRuntime), U16(Runtime::kPushModuleContext), R(2), U8(3), | 
| -                B(PushContext), R(2), | 
| -                B(Mov), R(this), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(3), U8(2), | 
| +                B(Star), R(5), | 
| +                B(Mov), R(arg0), R(3), | 
| +                B(Mov), R(closure), R(4), | 
| +                B(CallRuntime), U16(Runtime::kPushModuleContext), R(3), U8(3), | 
| +                B(PushContext), R(3), | 
| +                B(Mov), R(this), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateJSGeneratorObject), R(4), U8(2), | 
| B(StaCurrentContextSlot), U8(4), | 
| +                B(Star), R(0), | 
| B(LdaZero), | 
| -                B(Star), R(3), | 
| -                B(CallRuntime), U16(Runtime::kGetModuleNamespace), R(3), U8(1), | 
| +                B(Star), R(4), | 
| +                B(CallRuntime), U16(Runtime::kGetModuleNamespace), R(4), U8(1), | 
| B(StaCurrentContextSlot), U8(5), | 
| /*    0 E> */ B(StackCheck), | 
| -                B(LdaImmutableCurrentContextSlot), U8(4), | 
| -                B(Star), R(3), | 
| B(LdaImmutableCurrentContextSlot), U8(4), | 
| B(Star), R(4), | 
| +                B(LdaImmutableCurrentContextSlot), U8(4), | 
| +                B(Star), R(5), | 
| B(LdaZero), | 
| -  /*    0 E> */ B(SuspendGenerator), R(3), U8(0), | 
| -                B(Ldar), R(4), | 
| +  /*    0 E> */ B(SuspendGenerator), R(4), R(0), U8(5), U8(0), | 
| +                B(Ldar), R(5), | 
| /*   45 S> */ B(Return), | 
| +                B(RestoreGeneratorRegisters), R(0), R(0), U8(5), | 
| B(LdaSmi), I8(-2), | 
| -                B(Star), R(0), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), | 
| -                B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), | 
| +                B(Star), R(1), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), | 
| B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), | 
| +                B(Star), R(6), | 
| B(LdaZero), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(22), | 
| B(LdaSmi), I8(2), | 
| -                B(TestEqualStrictNoFeedback), R(5), | 
| +                B(TestEqualStrictNoFeedback), R(6), | 
| B(JumpIfTrue), U8(13), | 
| B(LdaTrue), | 
| -                B(Star), R(7), | 
| -                B(Mov), R(4), R(6), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), | 
| +                B(Star), R(8), | 
| +                B(Mov), R(5), R(7), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), | 
| /*   45 S> */ B(Return), | 
| -                B(Ldar), R(4), | 
| +                B(Ldar), R(5), | 
| /*    0 E> */ B(Throw), | 
| /*   27 S> */ B(LdaImmutableCurrentContextSlot), U8(5), | 
| -                B(Star), R(4), | 
| -  /*   30 E> */ B(LdaNamedProperty), R(4), U8(2), U8(5), | 
| -                B(Star), R(3), | 
| -                B(LdaImmutableCurrentContextSlot), U8(5), | 
| B(Star), R(5), | 
| +  /*   30 E> */ B(LdaNamedProperty), R(5), U8(2), U8(5), | 
| +                B(Star), R(4), | 
| B(LdaImmutableCurrentContextSlot), U8(5), | 
| B(Star), R(6), | 
| -  /*   41 E> */ B(LdaNamedProperty), R(6), U8(3), U8(7), | 
| -                B(Star), R(6), | 
| -  /*   31 E> */ B(CallProperty2), R(3), R(4), R(5), R(6), U8(3), | 
| +                B(LdaImmutableCurrentContextSlot), U8(5), | 
| +                B(Star), R(7), | 
| +  /*   41 E> */ B(LdaNamedProperty), R(7), U8(3), U8(7), | 
| +                B(Star), R(7), | 
| +  /*   31 E> */ B(CallProperty2), R(4), R(5), R(6), R(7), U8(3), | 
| B(StaCurrentContextSlot), U8(6), | 
| B(LdaCurrentContextSlot), U8(6), | 
| -                B(Star), R(3), | 
| -                B(LdaTrue), | 
| B(Star), R(4), | 
| -                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), | 
| +                B(LdaTrue), | 
| +                B(Star), R(5), | 
| +                B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), | 
| /*   45 S> */ B(Return), | 
| ] | 
| constant pool: [ | 
| -  Smi [69], | 
| +  Smi [73], | 
| FIXED_ARRAY_TYPE, | 
| ONE_BYTE_INTERNALIZED_STRING_TYPE ["f"], | 
| ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], | 
|  |