diff options
Diffstat (limited to 'deps/v8/test/cctest/interpreter/bytecode_expectations/Modules.golden')
-rw-r--r-- | deps/v8/test/cctest/interpreter/bytecode_expectations/Modules.golden | 969 |
1 files changed, 456 insertions, 513 deletions
diff --git a/deps/v8/test/cctest/interpreter/bytecode_expectations/Modules.golden b/deps/v8/test/cctest/interpreter/bytecode_expectations/Modules.golden index 510e573f54..2a44009043 100644 --- a/deps/v8/test/cctest/interpreter/bytecode_expectations/Modules.golden +++ b/deps/v8/test/cctest/interpreter/bytecode_expectations/Modules.golden @@ -11,68 +11,62 @@ top level: yes snippet: " import \"bar\"; " -frame size: 9 +frame size: 8 parameter count: 2 -bytecode array length: 143 +bytecode array length: 130 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(2), + 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(1), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(1), - B(JumpIfTrue), U8(64), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(3), - B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), + B(Star), R(2), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), B(LdaSmi), I8(-2), - B(Star), R(1), - B(LdaConstant), U8(0), - 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(0), - B(Ldar), R(this), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(4), - B(Mov), R(closure), R(3), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(3), U8(2), - B(StaCurrentContextSlot), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(5), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), B(LdaZero), - B(SuspendGenerator), R(4), U8(0), - B(Ldar), R(3), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), + B(Ldar), R(4), /* 13 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + 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(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), - B(Star), R(6), B(LdaZero), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(8), - B(Mov), R(5), R(7), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 13 S> */ B(Return), - B(Ldar), R(5), + B(Ldar), R(4), /* 0 E> */ B(Throw), - B(Ldar), R(5), - B(StaCurrentContextSlot), U8(6), - B(LdaCurrentContextSlot), U8(6), + B(Ldar), R(4), + B(StaCurrentContextSlot), U8(5), + B(LdaCurrentContextSlot), U8(5), B(Star), R(3), B(LdaTrue), B(Star), R(4), @@ -80,6 +74,7 @@ bytecodes: [ /* 13 S> */ B(Return), ] constant pool: [ + Smi [59], FIXED_ARRAY_TYPE, ] handlers: [ @@ -89,68 +84,62 @@ handlers: [ snippet: " import {foo} from \"bar\"; " -frame size: 9 +frame size: 8 parameter count: 2 -bytecode array length: 143 +bytecode array length: 130 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(2), + 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(1), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(1), - B(JumpIfTrue), U8(64), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(3), - B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), + B(Star), R(2), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), B(LdaSmi), I8(-2), - B(Star), R(1), - B(LdaConstant), U8(0), - 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(0), - B(Ldar), R(this), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(4), - B(Mov), R(closure), R(3), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(3), U8(2), - B(StaCurrentContextSlot), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(5), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), B(LdaZero), - B(SuspendGenerator), R(4), U8(0), - B(Ldar), R(3), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), + B(Ldar), R(4), /* 24 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + 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(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), - B(Star), R(6), B(LdaZero), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(8), - B(Mov), R(5), R(7), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 24 S> */ B(Return), - B(Ldar), R(5), + B(Ldar), R(4), /* 0 E> */ B(Throw), - B(Ldar), R(5), - B(StaCurrentContextSlot), U8(6), - B(LdaCurrentContextSlot), U8(6), + B(Ldar), R(4), + B(StaCurrentContextSlot), U8(5), + B(LdaCurrentContextSlot), U8(5), B(Star), R(3), B(LdaTrue), B(Star), R(4), @@ -158,6 +147,7 @@ bytecodes: [ /* 24 S> */ B(Return), ] constant pool: [ + Smi [59], FIXED_ARRAY_TYPE, ] handlers: [ @@ -169,100 +159,95 @@ snippet: " goo(42); { let x; { goo(42) } }; " -frame size: 10 +frame size: 8 parameter count: 2 -bytecode array length: 205 +bytecode array length: 192 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(3), + 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(2), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(2), - B(JumpIfTrue), U8(64), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(4), - B(CallRuntime), U16(Runtime::kAbort), R(4), U8(1), - B(LdaSmi), I8(-2), B(Star), R(2), - B(LdaConstant), U8(0), - B(Star), R(6), - B(Mov), R(arg0), R(4), - B(Mov), R(closure), R(5), - B(CallRuntime), U16(Runtime::kPushModuleContext), R(4), U8(3), - B(PushContext), R(0), - B(Ldar), R(this), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), + B(LdaSmi), I8(-2), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(5), - B(Mov), R(closure), R(4), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(4), U8(2), - B(StaCurrentContextSlot), U8(5), + B(Star), R(3), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), - B(LdaImmutableCurrentContextSlot), U8(5), - B(Star), R(5), B(LdaZero), - B(SuspendGenerator), R(5), U8(0), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), B(Ldar), R(4), /* 64 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(5), U8(1), - B(Star), R(6), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(5), U8(1), - B(Star), R(7), + 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(5), B(LdaZero), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(9), - B(Mov), R(6), R(8), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(8), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 64 S> */ B(Return), - B(Ldar), R(6), + B(Ldar), R(4), /* 0 E> */ B(Throw), /* 32 S> */ B(LdaModuleVariable), I8(-1), U8(0), B(JumpIfNotHole), U8(11), - B(LdaConstant), U8(1), - B(Star), R(5), - B(CallRuntime), U16(Runtime::kThrowReferenceError), R(5), U8(1), + B(LdaConstant), U8(2), B(Star), R(4), + B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1), + B(Star), R(3), B(LdaSmi), I8(42), - B(Star), R(5), - /* 32 E> */ B(CallUndefinedReceiver1), R(4), R(5), U8(2), + B(Star), R(4), + /* 32 E> */ B(CallUndefinedReceiver1), R(3), R(4), U8(3), B(Ldar), R(closure), - B(CreateBlockContext), U8(2), - B(PushContext), R(1), + B(CreateBlockContext), U8(3), + B(PushContext), R(3), B(LdaTheHole), B(StaCurrentContextSlot), U8(4), /* 47 S> */ B(LdaUndefined), /* 47 E> */ B(StaCurrentContextSlot), U8(4), /* 52 S> */ B(LdaModuleVariable), I8(-1), U8(1), B(JumpIfNotHole), U8(11), - B(LdaConstant), U8(1), + B(LdaConstant), U8(2), 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(4), - B(StaContextSlot), R(1), U8(6), U8(0), - B(PopContext), R(1), - B(LdaCurrentContextSlot), U8(6), - B(Star), R(4), + /* 52 E> */ B(CallUndefinedReceiver1), R(4), R(5), U8(5), + B(StaContextSlot), R(3), U8(5), U8(0), + B(PopContext), R(3), + B(LdaCurrentContextSlot), U8(5), + B(Star), R(3), B(LdaTrue), - B(Star), R(5), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), + B(Star), R(4), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), /* 64 S> */ B(Return), ] constant pool: [ + Smi [59], FIXED_ARRAY_TYPE, ONE_BYTE_INTERNALIZED_STRING_TYPE ["goo"], FIXED_ARRAY_TYPE, @@ -276,93 +261,88 @@ snippet: " foo++; { let x; { foo++ } }; " -frame size: 10 +frame size: 8 parameter count: 2 -bytecode array length: 185 +bytecode array length: 172 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(3), + 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(2), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(2), - B(JumpIfTrue), U8(64), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(4), - B(CallRuntime), U16(Runtime::kAbort), R(4), U8(1), - B(LdaSmi), I8(-2), B(Star), R(2), - B(LdaConstant), U8(0), - B(Star), R(6), - B(Mov), R(arg0), R(4), - B(Mov), R(closure), R(5), - B(CallRuntime), U16(Runtime::kPushModuleContext), R(4), U8(3), - B(PushContext), R(0), - B(Ldar), R(this), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), + B(LdaSmi), I8(-2), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(5), - B(Mov), R(closure), R(4), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(4), U8(2), - B(StaCurrentContextSlot), U8(5), + B(Star), R(3), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), - B(LdaImmutableCurrentContextSlot), U8(5), - B(Star), R(5), B(LdaZero), - B(SuspendGenerator), R(5), U8(0), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), B(Ldar), R(4), /* 49 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(5), U8(1), - B(Star), R(6), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(5), U8(1), - B(Star), R(7), + 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(5), B(LdaZero), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(9), - B(Mov), R(6), R(8), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(8), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 49 S> */ B(Return), - B(Ldar), R(6), + B(Ldar), R(4), /* 0 E> */ B(Throw), /* 17 S> */ B(LdaSmi), I8(42), /* 17 E> */ B(StaModuleVariable), I8(1), U8(0), /* 21 S> */ B(LdaModuleVariable), I8(1), U8(0), - B(Inc), U8(2), + B(Inc), U8(3), /* 24 E> */ B(StaModuleVariable), I8(1), U8(0), B(Ldar), R(closure), - B(CreateBlockContext), U8(1), - B(PushContext), R(1), + B(CreateBlockContext), U8(2), + B(PushContext), R(3), 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(3), + B(ToNumber), R(4), U8(4), B(Ldar), R(4), - B(Inc), U8(3), + B(Inc), U8(4), /* 42 E> */ B(StaModuleVariable), I8(1), U8(1), B(Ldar), R(4), - B(StaContextSlot), R(1), U8(6), U8(0), - B(PopContext), R(1), - B(LdaCurrentContextSlot), U8(6), - B(Star), R(4), + B(StaContextSlot), R(3), U8(5), U8(0), + B(PopContext), R(3), + B(LdaCurrentContextSlot), U8(5), + B(Star), R(3), B(LdaTrue), - B(Star), R(5), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), + B(Star), R(4), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), /* 49 S> */ B(Return), ] constant pool: [ + Smi [59], FIXED_ARRAY_TYPE, FIXED_ARRAY_TYPE, ] @@ -375,95 +355,90 @@ snippet: " foo++; { let x; { foo++ } }; " -frame size: 10 +frame size: 8 parameter count: 2 -bytecode array length: 189 +bytecode array length: 176 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(3), + 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(2), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(2), - B(JumpIfTrue), U8(68), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(4), - B(CallRuntime), U16(Runtime::kAbort), R(4), U8(1), - B(LdaSmi), I8(-2), B(Star), R(2), - B(LdaConstant), U8(0), - B(Star), R(6), - B(Mov), R(arg0), R(4), - B(Mov), R(closure), R(5), - B(CallRuntime), U16(Runtime::kPushModuleContext), R(4), U8(3), - B(PushContext), R(0), - B(Ldar), R(this), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), + B(LdaSmi), I8(-2), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), B(LdaTheHole), B(StaModuleVariable), I8(1), U8(0), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(5), - B(Mov), R(closure), R(4), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(4), U8(2), - B(StaCurrentContextSlot), U8(5), + B(Star), R(3), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), - B(LdaImmutableCurrentContextSlot), U8(5), - B(Star), R(5), B(LdaZero), - B(SuspendGenerator), R(5), U8(0), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), B(Ldar), R(4), /* 49 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(5), U8(1), - B(Star), R(6), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(5), U8(1), - B(Star), R(7), + 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(5), B(LdaZero), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(9), - B(Mov), R(6), R(8), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(8), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 49 S> */ B(Return), - B(Ldar), R(6), + B(Ldar), R(4), /* 0 E> */ B(Throw), /* 17 S> */ B(LdaSmi), I8(42), /* 17 E> */ B(StaModuleVariable), I8(1), U8(0), /* 21 S> */ B(LdaModuleVariable), I8(1), U8(0), - B(Inc), U8(2), + B(Inc), U8(3), /* 24 E> */ B(StaModuleVariable), I8(1), U8(0), B(Ldar), R(closure), - B(CreateBlockContext), U8(1), - B(PushContext), R(1), + B(CreateBlockContext), U8(2), + B(PushContext), R(3), 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(3), + B(ToNumber), R(4), U8(4), B(Ldar), R(4), - B(Inc), U8(3), + B(Inc), U8(4), /* 42 E> */ B(StaModuleVariable), I8(1), U8(1), B(Ldar), R(4), - B(StaContextSlot), R(1), U8(6), U8(0), - B(PopContext), R(1), - B(LdaCurrentContextSlot), U8(6), - B(Star), R(4), + B(StaContextSlot), R(3), U8(5), U8(0), + B(PopContext), R(3), + B(LdaCurrentContextSlot), U8(5), + B(Star), R(3), B(LdaTrue), - B(Star), R(5), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), + B(Star), R(4), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), /* 49 S> */ B(Return), ] constant pool: [ + Smi [63], FIXED_ARRAY_TYPE, FIXED_ARRAY_TYPE, ] @@ -476,95 +451,90 @@ snippet: " foo++; { let x; { foo++ } }; " -frame size: 10 +frame size: 8 parameter count: 2 -bytecode array length: 193 +bytecode array length: 180 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(3), + 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(2), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(2), - B(JumpIfTrue), U8(68), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(4), - B(CallRuntime), U16(Runtime::kAbort), R(4), U8(1), - B(LdaSmi), I8(-2), B(Star), R(2), - B(LdaConstant), U8(0), - B(Star), R(6), - B(Mov), R(arg0), R(4), - B(Mov), R(closure), R(5), - B(CallRuntime), U16(Runtime::kPushModuleContext), R(4), U8(3), - B(PushContext), R(0), - B(Ldar), R(this), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), + B(LdaSmi), I8(-2), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), B(LdaTheHole), B(StaModuleVariable), I8(1), U8(0), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(5), - B(Mov), R(closure), R(4), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(4), U8(2), - B(StaCurrentContextSlot), U8(5), + B(Star), R(3), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), - B(LdaImmutableCurrentContextSlot), U8(5), - B(Star), R(5), B(LdaZero), - B(SuspendGenerator), R(5), U8(0), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), B(Ldar), R(4), /* 51 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(5), U8(1), - B(Star), R(6), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(5), U8(1), - B(Star), R(7), + 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(5), B(LdaZero), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(7), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(9), - B(Mov), R(6), R(8), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(8), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 51 S> */ B(Return), - B(Ldar), R(6), + B(Ldar), R(4), /* 0 E> */ B(Throw), /* 19 S> */ B(LdaSmi), I8(42), /* 19 E> */ B(StaModuleVariable), I8(1), U8(0), /* 23 S> */ B(LdaModuleVariable), I8(1), U8(0), - B(Inc), U8(2), + B(Inc), U8(3), /* 26 E> */ B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0), B(Ldar), R(closure), - B(CreateBlockContext), U8(1), - B(PushContext), R(1), + B(CreateBlockContext), U8(2), + B(PushContext), R(3), 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(3), + B(ToNumber), R(4), U8(4), B(Ldar), R(4), - B(Inc), U8(3), + B(Inc), U8(4), /* 44 E> */ B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0), B(Ldar), R(4), - B(StaContextSlot), R(1), U8(6), U8(0), - B(PopContext), R(1), - B(LdaCurrentContextSlot), U8(6), - B(Star), R(4), + B(StaContextSlot), R(3), U8(5), U8(0), + B(PopContext), R(3), + B(LdaCurrentContextSlot), U8(5), + B(Star), R(3), B(LdaTrue), - B(Star), R(5), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(4), U8(2), + B(Star), R(4), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(3), U8(2), /* 51 S> */ B(Return), ] constant pool: [ + Smi [63], FIXED_ARRAY_TYPE, FIXED_ARRAY_TYPE, ] @@ -575,72 +545,66 @@ handlers: [ snippet: " export default (function () {}); " -frame size: 9 +frame size: 8 parameter count: 2 -bytecode array length: 154 +bytecode array length: 141 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(2), + 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(1), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(1), - B(JumpIfTrue), U8(68), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(3), - B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), + B(Star), R(2), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), B(LdaSmi), I8(-2), - B(Star), R(1), - B(LdaConstant), U8(0), - 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(0), - B(Ldar), R(this), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), B(LdaTheHole), B(StaModuleVariable), I8(1), U8(0), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(4), - B(Mov), R(closure), R(3), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(3), U8(2), - B(StaCurrentContextSlot), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(5), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), B(LdaZero), - B(SuspendGenerator), R(4), U8(0), - B(Ldar), R(3), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), + B(Ldar), R(4), /* 32 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + 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(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), - B(Star), R(6), B(LdaZero), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(8), - B(Mov), R(5), R(7), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 32 S> */ B(Return), - B(Ldar), R(5), + B(Ldar), R(4), /* 0 E> */ B(Throw), - B(Ldar), R(5), - B(StaCurrentContextSlot), U8(6), - B(CreateClosure), U8(1), U8(2), U8(0), + B(Ldar), R(4), + B(StaCurrentContextSlot), U8(5), + B(CreateClosure), U8(2), U8(3), U8(0), B(StaModuleVariable), I8(1), U8(0), - B(LdaCurrentContextSlot), U8(6), + B(LdaCurrentContextSlot), U8(5), B(Star), R(3), B(LdaTrue), B(Star), R(4), @@ -648,6 +612,7 @@ bytecodes: [ /* 32 S> */ B(Return), ] constant pool: [ + Smi [63], FIXED_ARRAY_TYPE, SHARED_FUNCTION_INFO_TYPE, ] @@ -658,70 +623,64 @@ handlers: [ snippet: " export default (class {}); " -frame size: 9 +frame size: 8 parameter count: 2 -bytecode array length: 191 +bytecode array length: 174 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(2), + 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(1), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(1), - B(JumpIfTrue), U8(68), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(3), - B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), + B(Star), R(2), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), B(LdaSmi), I8(-2), - B(Star), R(1), - B(LdaConstant), U8(0), - 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(0), - B(Ldar), R(this), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), B(LdaTheHole), B(StaModuleVariable), I8(1), U8(0), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(4), - B(Mov), R(closure), R(3), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(3), U8(2), - B(StaCurrentContextSlot), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(5), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), B(LdaZero), - B(SuspendGenerator), R(4), U8(0), - B(Ldar), R(3), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), + B(Ldar), R(4), /* 26 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + 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(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), - B(Star), R(6), B(LdaZero), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(8), - B(Mov), R(5), R(7), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 26 S> */ B(Return), - B(Ldar), R(5), + B(Ldar), R(4), /* 0 E> */ B(Throw), - B(Ldar), R(5), - B(StaCurrentContextSlot), U8(7), - /* 16 S> */ B(CreateClosure), U8(1), U8(2), U8(0), + B(Ldar), R(4), + B(StaCurrentContextSlot), U8(5), + B(CreateClosure), U8(2), U8(3), U8(0), B(Star), R(3), B(LdaTheHole), B(Star), R(4), @@ -734,10 +693,8 @@ bytecodes: [ B(Star), R(4), B(CallRuntime), U16(Runtime::kInstallClassNameAccessor), R(3), U8(1), B(CallRuntime), U16(Runtime::kToFastProperties), R(3), U8(1), - B(StaCurrentContextSlot), U8(6), - B(LdaCurrentContextSlot), U8(6), - /* 16 E> */ B(StaModuleVariable), I8(1), U8(0), - B(LdaCurrentContextSlot), U8(7), + B(StaModuleVariable), I8(1), U8(0), + B(LdaCurrentContextSlot), U8(5), B(Star), R(3), B(LdaTrue), B(Star), R(4), @@ -745,6 +702,7 @@ bytecodes: [ /* 26 S> */ B(Return), ] constant pool: [ + Smi [63], FIXED_ARRAY_TYPE, SHARED_FUNCTION_INFO_TYPE, ] @@ -755,68 +713,62 @@ handlers: [ snippet: " export {foo as goo} from \"bar\" " -frame size: 9 +frame size: 8 parameter count: 2 -bytecode array length: 143 +bytecode array length: 130 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(2), + 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(1), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(1), - B(JumpIfTrue), U8(64), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(3), - B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), + B(Star), R(2), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), B(LdaSmi), I8(-2), - B(Star), R(1), - B(LdaConstant), U8(0), - 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(0), - B(Ldar), R(this), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(4), - B(Mov), R(closure), R(3), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(3), U8(2), - B(StaCurrentContextSlot), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(5), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), B(LdaZero), - B(SuspendGenerator), R(4), U8(0), - B(Ldar), R(3), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), + B(Ldar), R(4), /* 30 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + 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(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), - B(Star), R(6), B(LdaZero), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(8), - B(Mov), R(5), R(7), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 30 S> */ B(Return), - B(Ldar), R(5), + B(Ldar), R(4), /* 0 E> */ B(Throw), - B(Ldar), R(5), - B(StaCurrentContextSlot), U8(6), - B(LdaCurrentContextSlot), U8(6), + B(Ldar), R(4), + B(StaCurrentContextSlot), U8(5), + B(LdaCurrentContextSlot), U8(5), B(Star), R(3), B(LdaTrue), B(Star), R(4), @@ -824,6 +776,7 @@ bytecodes: [ /* 30 S> */ B(Return), ] constant pool: [ + Smi [59], FIXED_ARRAY_TYPE, ] handlers: [ @@ -833,68 +786,62 @@ handlers: [ snippet: " export * from \"bar\" " -frame size: 9 +frame size: 8 parameter count: 2 -bytecode array length: 143 +bytecode array length: 130 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(2), + 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(1), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(1), - B(JumpIfTrue), U8(64), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(3), - B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), + B(Star), R(2), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), B(LdaSmi), I8(-2), - B(Star), R(1), - B(LdaConstant), U8(0), - 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(0), - B(Ldar), R(this), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(4), - B(Mov), R(closure), R(3), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(3), U8(2), - B(StaCurrentContextSlot), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(5), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), B(LdaZero), - B(SuspendGenerator), R(4), U8(0), - B(Ldar), R(3), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), + B(Ldar), R(4), /* 19 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + 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(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), - B(Star), R(6), B(LdaZero), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(8), - B(Mov), R(5), R(7), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 19 S> */ B(Return), - B(Ldar), R(5), + B(Ldar), R(4), /* 0 E> */ B(Throw), - B(Ldar), R(5), - B(StaCurrentContextSlot), U8(6), - B(LdaCurrentContextSlot), U8(6), + B(Ldar), R(4), + B(StaCurrentContextSlot), U8(5), + B(LdaCurrentContextSlot), U8(5), B(Star), R(3), B(LdaTrue), B(Star), R(4), @@ -902,6 +849,7 @@ bytecodes: [ /* 19 S> */ B(Return), ] constant pool: [ + Smi [59], FIXED_ARRAY_TYPE, ] handlers: [ @@ -912,82 +860,76 @@ snippet: " import * as foo from \"bar\" foo.f(foo, foo.x); " -frame size: 9 +frame size: 8 parameter count: 2 -bytecode array length: 181 +bytecode array length: 168 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(27), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), - B(PushContext), R(2), + 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(1), - B(LdaZero), - B(TestEqualStrictNoFeedback), R(1), - B(JumpIfTrue), U8(74), + B(Star), R(0), + B(SwitchOnSmiNoFeedback), U8(0), U8(1), I8(0), B(LdaSmi), I8(79), - B(Star), R(3), - B(CallRuntime), U16(Runtime::kAbort), R(3), U8(1), + B(Star), R(2), + B(CallRuntime), U16(Runtime::kAbort), R(2), U8(1), B(LdaSmi), I8(-2), - B(Star), R(1), - B(LdaConstant), U8(0), - 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(0), - B(Ldar), R(this), + B(Star), R(0), + 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(StaCurrentContextSlot), U8(4), B(LdaZero), B(Star), R(3), B(CallRuntime), U16(Runtime::kGetModuleNamespace), R(3), U8(1), - B(StaCurrentContextSlot), U8(6), + B(StaCurrentContextSlot), U8(5), /* 0 E> */ B(StackCheck), B(LdaImmutableCurrentContextSlot), U8(4), - B(Star), R(4), - B(Mov), R(closure), R(3), - /* 0 E> */ B(CallRuntime), U16(Runtime::kCreateJSGeneratorObject), R(3), U8(2), - B(StaCurrentContextSlot), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(5), + B(LdaImmutableCurrentContextSlot), U8(4), B(Star), R(4), B(LdaZero), - B(SuspendGenerator), R(4), U8(0), - B(Ldar), R(3), + /* 0 E> */ B(SuspendGenerator), R(3), U8(0), + B(Ldar), R(4), /* 45 S> */ B(Return), B(LdaSmi), I8(-2), - B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + 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(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), - B(Star), R(6), B(LdaZero), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(24), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(22), B(LdaSmi), I8(2), - B(TestEqualStrictNoFeedback), R(6), - B(JumpIfTrue), U8(15), - B(Jump), U8(2), + B(TestEqualStrictNoFeedback), R(5), + B(JumpIfTrue), U8(13), B(LdaTrue), - B(Star), R(8), - B(Mov), R(5), R(7), - B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(7), U8(2), + B(Star), R(7), + B(Mov), R(4), R(6), + B(InvokeIntrinsic), U8(Runtime::k_CreateIterResultObject), R(6), U8(2), /* 45 S> */ B(Return), - B(Ldar), R(5), + B(Ldar), R(4), /* 0 E> */ B(Throw), - /* 27 S> */ B(LdaImmutableCurrentContextSlot), U8(6), + /* 27 S> */ B(LdaImmutableCurrentContextSlot), U8(5), B(Star), R(4), - /* 30 E> */ B(LdaNamedProperty), R(4), U8(1), U8(4), + /* 30 E> */ B(LdaNamedProperty), R(4), U8(2), U8(5), B(Star), R(3), - B(LdaImmutableCurrentContextSlot), U8(6), + B(LdaImmutableCurrentContextSlot), U8(5), B(Star), R(5), - B(LdaImmutableCurrentContextSlot), U8(6), + B(LdaImmutableCurrentContextSlot), U8(5), B(Star), R(6), - /* 41 E> */ B(LdaNamedProperty), R(6), U8(2), U8(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(2), - B(StaCurrentContextSlot), U8(7), - B(LdaCurrentContextSlot), U8(7), + /* 31 E> */ B(CallProperty2), R(3), R(4), R(5), R(6), U8(3), + B(StaCurrentContextSlot), U8(6), + B(LdaCurrentContextSlot), U8(6), B(Star), R(3), B(LdaTrue), B(Star), R(4), @@ -995,6 +937,7 @@ bytecodes: [ /* 45 S> */ B(Return), ] constant pool: [ + Smi [69], FIXED_ARRAY_TYPE, ONE_BYTE_INTERNALIZED_STRING_TYPE ["f"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], |