diff --git a/src/interpreter/interpreter-intrinsics-generator.cc b/src/interpreter/interpreter-intrinsics-generator.cc index d9ca1e21ee..6c8bb1390a 100644 --- a/src/interpreter/interpreter-intrinsics-generator.cc +++ b/src/interpreter/interpreter-intrinsics-generator.cc @@ -405,6 +405,35 @@ Node* IntrinsicsGenerator::CreateJSGeneratorObject(Node* input, Node* arg_count, Builtins::kCreateGeneratorObject); } +Node* IntrinsicsGenerator::GeneratorGetContext(Node* args_reg, Node* arg_count, + Node* context) { + Node* generator = __ LoadRegister(args_reg); + Node* const value = + __ LoadObjectField(generator, JSGeneratorObject::kContextOffset); + + return value; +} + +Node* IntrinsicsGenerator::GeneratorGetInputOrDebugPos(Node* args_reg, + Node* arg_count, + Node* context) { + Node* generator = __ LoadRegister(args_reg); + Node* const value = + __ LoadObjectField(generator, JSGeneratorObject::kInputOrDebugPosOffset); + + return value; +} + +Node* IntrinsicsGenerator::GeneratorGetResumeMode(Node* args_reg, + Node* arg_count, + Node* context) { + Node* generator = __ LoadRegister(args_reg); + Node* const value = + __ LoadObjectField(generator, JSGeneratorObject::kResumeModeOffset); + + return value; +} + Node* IntrinsicsGenerator::AsyncGeneratorReject(Node* input, Node* arg_count, Node* context) { return IntrinsicAsBuiltinCall(input, context, diff --git a/src/interpreter/interpreter-intrinsics.h b/src/interpreter/interpreter-intrinsics.h index fc0c577fd4..1bc6a83873 100644 --- a/src/interpreter/interpreter-intrinsics.h +++ b/src/interpreter/interpreter-intrinsics.h @@ -13,33 +13,36 @@ namespace interpreter { // List of supported intrisics, with upper case name, lower case name and // expected number of arguments (-1 denoting argument count is variable). -#define INTRINSICS_LIST(V) \ - V(AsyncGeneratorGetAwaitInputOrDebugPos, \ - async_generator_get_await_input_or_debug_pos, 1) \ - V(AsyncGeneratorReject, async_generator_reject, 2) \ - V(AsyncGeneratorResolve, async_generator_resolve, 3) \ - V(CreateJSGeneratorObject, create_js_generator_object, 2) \ - V(Call, call, -1) \ - V(ClassOf, class_of, 1) \ - V(CreateIterResultObject, create_iter_result_object, 2) \ - V(CreateAsyncFromSyncIterator, create_async_from_sync_iterator, 1) \ - V(HasProperty, has_property, 2) \ - V(IsArray, is_array, 1) \ - V(IsJSMap, is_js_map, 1) \ - V(IsJSMapIterator, is_js_map_iterator, 1) \ - V(IsJSProxy, is_js_proxy, 1) \ - V(IsJSReceiver, is_js_receiver, 1) \ - V(IsJSSet, is_js_set, 1) \ - V(IsJSSetIterator, is_js_set_iterator, 1) \ - V(IsJSWeakMap, is_js_weak_map, 1) \ - V(IsJSWeakSet, is_js_weak_set, 1) \ - V(IsSmi, is_smi, 1) \ - V(IsTypedArray, is_typed_array, 1) \ - V(SubString, sub_string, 3) \ - V(ToString, to_string, 1) \ - V(ToLength, to_length, 1) \ - V(ToInteger, to_integer, 1) \ - V(ToNumber, to_number, 1) \ +#define INTRINSICS_LIST(V) \ + V(AsyncGeneratorGetAwaitInputOrDebugPos, \ + async_generator_get_await_input_or_debug_pos, 1) \ + V(AsyncGeneratorReject, async_generator_reject, 2) \ + V(AsyncGeneratorResolve, async_generator_resolve, 3) \ + V(CreateJSGeneratorObject, create_js_generator_object, 2) \ + V(GeneratorGetContext, generator_get_context, 1) \ + V(GeneratorGetResumeMode, generator_get_resume_mode, 1) \ + V(GeneratorGetInputOrDebugPos, generator_get_input_or_debug_pos, 1) \ + V(Call, call, -1) \ + V(ClassOf, class_of, 1) \ + V(CreateIterResultObject, create_iter_result_object, 2) \ + V(CreateAsyncFromSyncIterator, create_async_from_sync_iterator, 1) \ + V(HasProperty, has_property, 2) \ + V(IsArray, is_array, 1) \ + V(IsJSMap, is_js_map, 1) \ + V(IsJSMapIterator, is_js_map_iterator, 1) \ + V(IsJSProxy, is_js_proxy, 1) \ + V(IsJSReceiver, is_js_receiver, 1) \ + V(IsJSSet, is_js_set, 1) \ + V(IsJSSetIterator, is_js_set_iterator, 1) \ + V(IsJSWeakMap, is_js_weak_map, 1) \ + V(IsJSWeakSet, is_js_weak_set, 1) \ + V(IsSmi, is_smi, 1) \ + V(IsTypedArray, is_typed_array, 1) \ + V(SubString, sub_string, 3) \ + V(ToString, to_string, 1) \ + V(ToLength, to_length, 1) \ + V(ToInteger, to_integer, 1) \ + V(ToNumber, to_number, 1) \ V(ToObject, to_object, 1) class IntrinsicsHelper { diff --git a/src/runtime/runtime-generator.cc b/src/runtime/runtime-generator.cc index 0c8fe6db01..74b1fe90d2 100644 --- a/src/runtime/runtime-generator.cc +++ b/src/runtime/runtime-generator.cc @@ -66,6 +66,10 @@ RUNTIME_FUNCTION(Runtime_GeneratorGetContext) { DCHECK_EQ(1, args.length()); CONVERT_ARG_HANDLE_CHECKED(JSGeneratorObject, generator, 0); + // Runtime call is implemented in InterpreterIntrinsics and lowered in + // JSIntrinsicLowering + UNREACHABLE(); + return generator->context(); } @@ -74,6 +78,10 @@ RUNTIME_FUNCTION(Runtime_GeneratorGetInputOrDebugPos) { DCHECK_EQ(1, args.length()); CONVERT_ARG_HANDLE_CHECKED(JSGeneratorObject, generator, 0); + // Runtime call is implemented in InterpreterIntrinsics and lowered in + // JSIntrinsicLowering + UNREACHABLE(); + return generator->input_or_debug_pos(); } @@ -81,7 +89,6 @@ RUNTIME_FUNCTION(Runtime_AsyncGeneratorGetAwaitInputOrDebugPos) { HandleScope scope(isolate); DCHECK_EQ(1, args.length()); CONVERT_ARG_HANDLE_CHECKED(JSAsyncGeneratorObject, generator, 0); - return generator->await_input_or_debug_pos(); } @@ -112,6 +119,10 @@ RUNTIME_FUNCTION(Runtime_GeneratorGetResumeMode) { DCHECK_EQ(1, args.length()); CONVERT_ARG_HANDLE_CHECKED(JSGeneratorObject, generator, 0); + // Runtime call is implemented in InterpreterIntrinsics and lowered in + // JSIntrinsicLowering + UNREACHABLE(); + return Smi::FromInt(generator->resume_mode()); } diff --git a/test/cctest/interpreter/bytecode_expectations/ForAwaitOf.golden b/test/cctest/interpreter/bytecode_expectations/ForAwaitOf.golden index bf020a9eca..afeb5627d7 100644 --- a/test/cctest/interpreter/bytecode_expectations/ForAwaitOf.golden +++ b/test/cctest/interpreter/bytecode_expectations/ForAwaitOf.golden @@ -16,11 +16,11 @@ snippet: " " frame size: 18 parameter count: 1 -bytecode array length: 953 +bytecode array length: 946 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -100,9 +100,9 @@ bytecodes: [ /* 57 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), B(Star), R(14), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), B(Star), R(15), B(LdaZero), B(TestEqualStrictNoFeedback), R(15), @@ -151,7 +151,7 @@ bytecodes: [ B(PopContext), R(2), B(LdaZero), B(StaContextSlot), R(1), U8(8), U8(0), - B(JumpLoop), U8(221), I8(0), + B(JumpLoop), U8(219), I8(0), B(Jump), U8(48), B(Star), R(13), B(Ldar), R(closure), @@ -198,7 +198,7 @@ bytecodes: [ B(Star), R(12), B(LdaSmi), I8(1), B(TestEqualStrict), R(12), U8(25), - B(JumpIfFalse), U8(177), + B(JumpIfFalse), U8(175), B(LdaContextSlot), R(1), U8(12), U8(0), B(TestTypeOf), U8(5), B(JumpIfFalse), U8(4), @@ -235,9 +235,9 @@ bytecodes: [ /* 57 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), B(Star), R(14), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), B(Star), R(15), B(LdaZero), B(TestEqualStrictNoFeedback), R(15), @@ -270,7 +270,7 @@ bytecodes: [ B(Ldar), R(12), B(PushContext), R(2), B(PopContext), R(2), - B(Jump), U8(155), + B(Jump), U8(153), B(LdaImmutableContextSlot), R(1), U8(4), U8(0), B(Star), R(12), B(LdaContextSlot), R(1), U8(12), U8(0), @@ -296,9 +296,9 @@ bytecodes: [ /* 57 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), B(Star), R(13), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), B(Star), R(14), B(LdaZero), B(TestEqualStrictNoFeedback), R(14), @@ -413,8 +413,8 @@ bytecodes: [ ] constant pool: [ Smi [116], - Smi [546], - Smi [692], + Smi [544], + Smi [688], FIXED_ARRAY_TYPE, TUPLE2_TYPE, SYMBOL_TYPE, @@ -429,21 +429,21 @@ constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], ONE_BYTE_INTERNALIZED_STRING_TYPE [""], FIXED_ARRAY_TYPE, - Smi [343], - Smi [366], + Smi [339], + Smi [362], Smi [6], Smi [22], FIXED_ARRAY_TYPE, - Smi [306], + Smi [304], Smi [6], Smi [9], ] handlers: [ - [61, 907, 913], - [64, 854, 856], - [81, 403, 409], - [84, 355, 357], - [496, 620, 622], + [60, 900, 906], + [63, 847, 849], + [80, 400, 406], + [83, 352, 354], + [493, 615, 617], ] --- @@ -455,11 +455,11 @@ snippet: " " frame size: 18 parameter count: 1 -bytecode array length: 999 +bytecode array length: 992 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -539,9 +539,9 @@ bytecodes: [ /* 68 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), B(Star), R(14), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), B(Star), R(15), B(LdaZero), B(TestEqualStrictNoFeedback), R(15), @@ -644,7 +644,7 @@ bytecodes: [ B(Star), R(12), B(LdaSmi), I8(1), B(TestEqualStrict), R(12), U8(25), - B(JumpIfFalse), U8(177), + B(JumpIfFalse), U8(175), B(LdaContextSlot), R(1), U8(12), U8(0), B(TestTypeOf), U8(5), B(JumpIfFalse), U8(4), @@ -681,9 +681,9 @@ bytecodes: [ /* 68 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), B(Star), R(14), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), B(Star), R(15), B(LdaZero), B(TestEqualStrictNoFeedback), R(15), @@ -716,7 +716,7 @@ bytecodes: [ B(Ldar), R(12), B(PushContext), R(2), B(PopContext), R(2), - B(Jump), U8(155), + B(Jump), U8(153), B(LdaImmutableContextSlot), R(1), U8(4), U8(0), B(Star), R(12), B(LdaContextSlot), R(1), U8(12), U8(0), @@ -742,9 +742,9 @@ bytecodes: [ /* 68 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), B(Star), R(13), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), B(Star), R(14), B(LdaZero), B(TestEqualStrictNoFeedback), R(14), @@ -875,8 +875,8 @@ bytecodes: [ ] constant pool: [ Smi [116], - Smi [558], - Smi [704], + Smi [556], + Smi [700], FIXED_ARRAY_TYPE, TUPLE2_TYPE, SYMBOL_TYPE, @@ -891,23 +891,23 @@ constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], ONE_BYTE_INTERNALIZED_STRING_TYPE [""], FIXED_ARRAY_TYPE, - Smi [343], - Smi [366], + Smi [339], + Smi [362], Smi [6], Smi [22], Smi [39], FIXED_ARRAY_TYPE, - Smi [323], + Smi [321], Smi [6], Smi [9], Smi [26], ] handlers: [ - [61, 936, 942], - [64, 883, 885], - [81, 415, 421], - [84, 367, 369], - [508, 632, 634], + [60, 929, 935], + [63, 876, 878], + [80, 412, 418], + [83, 364, 366], + [505, 627, 629], ] --- @@ -922,11 +922,11 @@ snippet: " " frame size: 18 parameter count: 1 -bytecode array length: 987 +bytecode array length: 980 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -1006,9 +1006,9 @@ bytecodes: [ /* 114 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), B(Star), R(14), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), B(Star), R(15), B(LdaZero), B(TestEqualStrictNoFeedback), R(15), @@ -1073,7 +1073,7 @@ bytecodes: [ B(PopContext), R(2), B(LdaZero), B(StaContextSlot), R(1), U8(8), U8(0), - B(JumpLoop), U8(255), I8(0), + B(JumpLoop), U8(253), I8(0), B(Jump), U8(48), B(Star), R(13), B(Ldar), R(closure), @@ -1120,7 +1120,7 @@ bytecodes: [ B(Star), R(12), B(LdaSmi), I8(1), B(TestEqualStrict), R(12), U8(27), - B(JumpIfFalse), U8(177), + B(JumpIfFalse), U8(175), B(LdaContextSlot), R(1), U8(12), U8(0), B(TestTypeOf), U8(5), B(JumpIfFalse), U8(4), @@ -1157,9 +1157,9 @@ bytecodes: [ /* 114 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), B(Star), R(14), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), B(Star), R(15), B(LdaZero), B(TestEqualStrictNoFeedback), R(15), @@ -1192,7 +1192,7 @@ bytecodes: [ B(Ldar), R(12), B(PushContext), R(2), B(PopContext), R(2), - B(Jump), U8(155), + B(Jump), U8(153), B(LdaImmutableContextSlot), R(1), U8(4), U8(0), B(Star), R(12), B(LdaContextSlot), R(1), U8(12), U8(0), @@ -1218,9 +1218,9 @@ bytecodes: [ /* 114 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), B(Star), R(13), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), B(Star), R(14), B(LdaZero), B(TestEqualStrictNoFeedback), R(14), @@ -1335,8 +1335,8 @@ bytecodes: [ ] constant pool: [ Smi [116], - Smi [580], - Smi [726], + Smi [578], + Smi [722], FIXED_ARRAY_TYPE, TUPLE2_TYPE, SYMBOL_TYPE, @@ -1351,21 +1351,21 @@ constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], ONE_BYTE_INTERNALIZED_STRING_TYPE [""], FIXED_ARRAY_TYPE, - Smi [343], - Smi [366], + Smi [339], + Smi [362], Smi [6], Smi [22], FIXED_ARRAY_TYPE, - Smi [306], + Smi [304], Smi [6], Smi [9], ] handlers: [ - [61, 941, 947], - [64, 888, 890], - [81, 437, 443], - [84, 389, 391], - [530, 654, 656], + [60, 934, 940], + [63, 881, 883], + [80, 434, 440], + [83, 386, 388], + [527, 649, 651], ] --- diff --git a/test/cctest/interpreter/bytecode_expectations/ForOfLoop.golden b/test/cctest/interpreter/bytecode_expectations/ForOfLoop.golden index 4933809ab3..80696ecbb1 100644 --- a/test/cctest/interpreter/bytecode_expectations/ForOfLoop.golden +++ b/test/cctest/interpreter/bytecode_expectations/ForOfLoop.golden @@ -644,11 +644,11 @@ snippet: " " frame size: 15 parameter count: 2 -bytecode array length: 593 +bytecode array length: 590 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(5), B(ResumeGenerator), R(new_target), B(Star), R(4), @@ -678,9 +678,9 @@ bytecodes: [ /* 55 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(9), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(9), U8(1), B(Star), R(10), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(9), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(9), U8(1), B(Star), R(11), B(LdaZero), B(TestEqualStrictNoFeedback), R(11), @@ -909,10 +909,10 @@ constant pool: [ Smi [9], ] handlers: [ - [56, 549, 555], - [137, 334, 340], - [140, 290, 292], - [426, 442, 444], + [55, 546, 552], + [134, 331, 337], + [137, 287, 289], + [423, 439, 441], ] --- @@ -924,11 +924,11 @@ snippet: " " frame size: 17 parameter count: 2 -bytecode array length: 701 +bytecode array length: 696 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -958,9 +958,9 @@ bytecodes: [ /* 49 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), B(Star), R(9), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), B(Star), R(10), B(LdaZero), B(TestEqualStrictNoFeedback), R(10), @@ -1019,7 +1019,7 @@ bytecodes: [ B(LdaContextSlot), R(1), U8(8), U8(0), B(Star), R(12), B(LdaNamedProperty), R(12), U8(6), U8(11), - B(JumpIfToBooleanTrue), U8(144), + B(JumpIfToBooleanTrue), U8(142), B(LdaContextSlot), R(1), U8(8), U8(0), B(Star), R(12), B(LdaNamedProperty), R(12), U8(7), U8(13), @@ -1050,9 +1050,9 @@ bytecodes: [ /* 49 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), B(Star), R(13), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), B(Star), R(14), B(LdaZero), B(TestEqualStrictNoFeedback), R(14), @@ -1079,7 +1079,7 @@ bytecodes: [ B(PopContext), R(2), B(LdaZero), B(StaContextSlot), R(1), U8(9), U8(0), - B(JumpLoop), U8(212), I8(0), + B(JumpLoop), U8(210), I8(0), B(Jump), U8(44), B(Star), R(12), B(Ldar), R(closure), @@ -1218,7 +1218,7 @@ bytecodes: [ ] constant pool: [ Smi [56], - Smi [152], + Smi [150], FIXED_ARRAY_TYPE, SYMBOL_TYPE, Smi [142], @@ -1233,15 +1233,15 @@ constant pool: [ FIXED_ARRAY_TYPE, Smi [6], Smi [18], - Smi [554], + Smi [552], Smi [6], Smi [9], ] handlers: [ - [56, 657, 663], - [137, 426, 432], - [140, 382, 384], - [519, 535, 537], + [55, 652, 658], + [134, 421, 427], + [137, 377, 379], + [514, 530, 532], ] --- @@ -1523,11 +1523,11 @@ snippet: " " frame size: 18 parameter count: 2 -bytecode array length: 735 +bytecode array length: 732 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -1593,7 +1593,7 @@ bytecodes: [ B(LdaContextSlot), R(1), U8(10), U8(0), B(Star), R(13), B(LdaNamedProperty), R(13), U8(5), U8(11), - B(JumpIfToBooleanTrue), U8(167), + B(JumpIfToBooleanTrue), U8(165), B(LdaContextSlot), R(1), U8(10), U8(0), B(Star), R(13), B(LdaNamedProperty), R(13), U8(6), U8(13), @@ -1631,9 +1631,9 @@ bytecodes: [ /* 54 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(13), U8(1), B(Star), R(14), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(13), U8(1), B(Star), R(15), B(LdaZero), B(TestEqualStrictNoFeedback), R(15), @@ -1660,7 +1660,7 @@ bytecodes: [ B(PopContext), R(2), B(LdaZero), B(StaContextSlot), R(1), U8(11), U8(0), - B(JumpLoop), U8(235), I8(0), + B(JumpLoop), U8(233), I8(0), B(Jump), U8(48), B(Star), R(13), B(Ldar), R(closure), @@ -1851,10 +1851,10 @@ constant pool: [ Smi [9], ] handlers: [ - [65, 689, 695], - [68, 636, 638], - [85, 401, 407], - [88, 353, 355], - [494, 510, 512], + [64, 686, 692], + [67, 633, 635], + [84, 398, 404], + [87, 350, 352], + [491, 507, 509], ] diff --git a/test/cctest/interpreter/bytecode_expectations/Generators.golden b/test/cctest/interpreter/bytecode_expectations/Generators.golden index 90ff67481e..4c2e2e685c 100644 --- a/test/cctest/interpreter/bytecode_expectations/Generators.golden +++ b/test/cctest/interpreter/bytecode_expectations/Generators.golden @@ -13,11 +13,11 @@ snippet: " " frame size: 11 parameter count: 1 -bytecode array length: 177 +bytecode array length: 174 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -45,9 +45,9 @@ bytecodes: [ /* 16 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(6), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(6), U8(1), B(Star), R(7), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(6), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(6), U8(1), B(Star), R(8), B(LdaZero), B(TestEqualStrictNoFeedback), R(8), @@ -104,7 +104,7 @@ constant pool: [ Smi [9], ] handlers: [ - [52, 133, 139], + [51, 130, 136], ] --- @@ -114,11 +114,11 @@ snippet: " " frame size: 11 parameter count: 1 -bytecode array length: 251 +bytecode array length: 246 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -146,9 +146,9 @@ bytecodes: [ /* 25 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(6), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(6), U8(1), B(Star), R(7), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(6), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(6), U8(1), B(Star), R(8), B(LdaZero), B(TestEqualStrictNoFeedback), R(8), @@ -163,7 +163,7 @@ bytecodes: [ B(Star), R(4), B(LdaZero), B(Star), R(3), - B(Jump), U8(108), + B(Jump), U8(106), B(Ldar), R(7), /* 11 E> */ B(Throw), /* 16 S> */ B(LdaImmutableCurrentContextSlot), U8(4), @@ -180,9 +180,9 @@ bytecodes: [ /* 25 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(6), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(6), U8(1), B(Star), R(7), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(6), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(6), U8(1), B(Star), R(8), B(LdaZero), B(TestEqualStrictNoFeedback), R(8), @@ -235,12 +235,12 @@ bytecodes: [ ] constant pool: [ Smi [52], - Smi [126], + Smi [124], Smi [6], Smi [9], ] handlers: [ - [52, 207, 213], + [51, 202, 208], ] --- @@ -250,11 +250,11 @@ snippet: " " frame size: 17 parameter count: 1 -bytecode array length: 697 +bytecode array length: 692 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -282,9 +282,9 @@ bytecodes: [ /* 44 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), B(Star), R(9), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), B(Star), R(10), B(LdaZero), B(TestEqualStrictNoFeedback), R(10), @@ -343,7 +343,7 @@ bytecodes: [ B(LdaContextSlot), R(1), U8(7), U8(0), B(Star), R(12), B(LdaNamedProperty), R(12), U8(7), U8(12), - B(JumpIfToBooleanTrue), U8(144), + B(JumpIfToBooleanTrue), U8(142), B(LdaContextSlot), R(1), U8(7), U8(0), B(Star), R(12), B(LdaNamedProperty), R(12), U8(8), U8(14), @@ -374,9 +374,9 @@ bytecodes: [ /* 44 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(12), U8(1), B(Star), R(13), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(12), U8(1), B(Star), R(14), B(LdaZero), B(TestEqualStrictNoFeedback), R(14), @@ -403,7 +403,7 @@ bytecodes: [ B(PopContext), R(2), B(LdaZero), B(StaContextSlot), R(1), U8(8), U8(0), - B(JumpLoop), U8(212), I8(0), + B(JumpLoop), U8(210), I8(0), B(Jump), U8(44), B(Star), R(12), B(Ldar), R(closure), @@ -542,7 +542,7 @@ bytecodes: [ ] constant pool: [ Smi [52], - Smi [148], + Smi [146], FIXED_ARRAY_TYPE, TUPLE2_TYPE, SYMBOL_TYPE, @@ -558,14 +558,14 @@ constant pool: [ FIXED_ARRAY_TYPE, Smi [6], Smi [18], - Smi [554], + Smi [552], Smi [6], Smi [9], ] handlers: [ - [52, 653, 659], - [133, 422, 428], - [136, 378, 380], - [515, 531, 533], + [51, 648, 654], + [130, 417, 423], + [133, 373, 375], + [510, 526, 528], ] diff --git a/test/cctest/interpreter/bytecode_expectations/Modules.golden b/test/cctest/interpreter/bytecode_expectations/Modules.golden index e4a6b82ef1..c3156dfb2c 100644 --- a/test/cctest/interpreter/bytecode_expectations/Modules.golden +++ b/test/cctest/interpreter/bytecode_expectations/Modules.golden @@ -13,11 +13,11 @@ snippet: " " frame size: 8 parameter count: 2 -bytecode array length: 136 +bytecode array length: 133 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -48,9 +48,9 @@ bytecodes: [ /* 13 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), B(Star), R(5), B(LdaZero), B(TestEqualStrictNoFeedback), R(5), @@ -87,11 +87,11 @@ snippet: " " frame size: 8 parameter count: 2 -bytecode array length: 136 +bytecode array length: 133 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -122,9 +122,9 @@ bytecodes: [ /* 24 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), B(Star), R(5), B(LdaZero), B(TestEqualStrictNoFeedback), R(5), @@ -163,11 +163,11 @@ snippet: " " frame size: 9 parameter count: 2 -bytecode array length: 198 +bytecode array length: 195 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(3), B(ResumeGenerator), R(new_target), B(Star), R(2), @@ -198,9 +198,9 @@ bytecodes: [ /* 64 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), B(Star), R(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), B(Star), R(6), B(LdaZero), B(TestEqualStrictNoFeedback), R(6), @@ -266,11 +266,11 @@ snippet: " " frame size: 9 parameter count: 2 -bytecode array length: 178 +bytecode array length: 175 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(3), B(ResumeGenerator), R(new_target), B(Star), R(2), @@ -301,9 +301,9 @@ bytecodes: [ /* 49 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), B(Star), R(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), B(Star), R(6), B(LdaZero), B(TestEqualStrictNoFeedback), R(6), @@ -361,11 +361,11 @@ snippet: " " frame size: 9 parameter count: 2 -bytecode array length: 182 +bytecode array length: 179 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(3), B(ResumeGenerator), R(new_target), B(Star), R(2), @@ -398,9 +398,9 @@ bytecodes: [ /* 49 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), B(Star), R(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), B(Star), R(6), B(LdaZero), B(TestEqualStrictNoFeedback), R(6), @@ -458,11 +458,11 @@ snippet: " " frame size: 9 parameter count: 2 -bytecode array length: 186 +bytecode array length: 183 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(3), B(ResumeGenerator), R(new_target), B(Star), R(2), @@ -495,9 +495,9 @@ bytecodes: [ /* 51 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(2), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(4), U8(1), B(Star), R(5), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(4), U8(1), B(Star), R(6), B(LdaZero), B(TestEqualStrictNoFeedback), R(6), @@ -553,11 +553,11 @@ snippet: " " frame size: 8 parameter count: 2 -bytecode array length: 147 +bytecode array length: 144 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -590,9 +590,9 @@ bytecodes: [ /* 32 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), B(Star), R(5), B(LdaZero), B(TestEqualStrictNoFeedback), R(5), @@ -632,11 +632,11 @@ snippet: " " frame size: 8 parameter count: 2 -bytecode array length: 180 +bytecode array length: 177 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -669,9 +669,9 @@ bytecodes: [ /* 26 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), B(Star), R(5), B(LdaZero), B(TestEqualStrictNoFeedback), R(5), @@ -723,11 +723,11 @@ snippet: " " frame size: 8 parameter count: 2 -bytecode array length: 136 +bytecode array length: 133 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -758,9 +758,9 @@ bytecodes: [ /* 30 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), B(Star), R(5), B(LdaZero), B(TestEqualStrictNoFeedback), R(5), @@ -797,11 +797,11 @@ snippet: " " frame size: 8 parameter count: 2 -bytecode array length: 136 +bytecode array length: 133 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -832,9 +832,9 @@ bytecodes: [ /* 19 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), B(Star), R(5), B(LdaZero), B(TestEqualStrictNoFeedback), R(5), @@ -872,11 +872,11 @@ snippet: " " frame size: 8 parameter count: 2 -bytecode array length: 174 +bytecode array length: 171 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(2), B(ResumeGenerator), R(new_target), B(Star), R(1), @@ -911,9 +911,9 @@ bytecodes: [ /* 45 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(1), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(3), U8(1), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(3), U8(1), B(Star), R(5), B(LdaZero), B(TestEqualStrictNoFeedback), R(5), diff --git a/test/cctest/interpreter/bytecode_expectations/StandardForLoop.golden b/test/cctest/interpreter/bytecode_expectations/StandardForLoop.golden index e7e5d0127a..482b0c567a 100644 --- a/test/cctest/interpreter/bytecode_expectations/StandardForLoop.golden +++ b/test/cctest/interpreter/bytecode_expectations/StandardForLoop.golden @@ -273,11 +273,11 @@ snippet: " " frame size: 14 parameter count: 1 -bytecode array length: 335 +bytecode array length: 332 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(5), B(ResumeGenerator), R(new_target), B(Star), R(4), @@ -305,9 +305,9 @@ bytecodes: [ /* 62 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(4), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(9), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(9), U8(1), B(Star), R(10), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(9), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(9), U8(1), B(Star), R(11), B(LdaZero), B(TestEqualStrictNoFeedback), R(11), @@ -436,7 +436,7 @@ constant pool: [ Smi [9], ] handlers: [ - [52, 291, 297], + [51, 288, 294], ] --- @@ -448,11 +448,11 @@ snippet: " " frame size: 13 parameter count: 1 -bytecode array length: 444 +bytecode array length: 439 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -480,9 +480,9 @@ bytecodes: [ /* 56 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), B(Star), R(9), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), B(Star), R(10), B(LdaZero), B(TestEqualStrictNoFeedback), R(10), @@ -547,7 +547,7 @@ bytecodes: [ B(JumpIfFalse), U8(4), B(Jump), U8(6), B(PopContext), R(2), - B(Jump), U8(157), + B(Jump), U8(155), B(Ldar), R(3), B(SwitchOnSmiNoFeedback), U8(5), U8(1), I8(1), B(LdaSmi), I8(-2), @@ -560,7 +560,7 @@ bytecodes: [ B(Star), R(8), B(LdaSmi), I8(1), B(TestEqual), R(8), U8(6), - B(JumpIfFalse), U8(101), + B(JumpIfFalse), U8(99), /* 18 E> */ B(StackCheck), /* 47 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), B(Star), R(8), @@ -576,9 +576,9 @@ bytecodes: [ /* 56 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(8), U8(1), B(Star), R(9), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(8), U8(1), B(Star), R(10), B(LdaZero), B(TestEqualStrictNoFeedback), R(10), @@ -604,7 +604,7 @@ bytecodes: [ B(StaContextSlot), R(1), U8(7), U8(0), B(LdaCurrentContextSlot), U8(4), /* 54 E> */ B(StaContextSlot), R(1), U8(5), U8(0), - B(JumpLoop), U8(130), I8(1), + B(JumpLoop), U8(128), I8(1), B(LdaContextSlot), R(1), U8(7), U8(0), B(Star), R(8), B(LdaSmi), I8(1), @@ -613,7 +613,7 @@ bytecodes: [ B(PopContext), R(2), B(Jump), U8(7), B(PopContext), R(2), - B(JumpLoop), U8(238), I8(0), + B(JumpLoop), U8(236), I8(0), B(PopContext), R(1), B(LdaUndefined), B(Star), R(8), @@ -650,17 +650,17 @@ bytecodes: [ ] constant pool: [ Smi [52], - Smi [125], + Smi [123], FIXED_ARRAY_TYPE, Smi [84], FIXED_ARRAY_TYPE, Smi [60], - Smi [301], + Smi [299], Smi [6], Smi [9], ] handlers: [ - [52, 400, 406], + [51, 395, 401], ] --- @@ -838,11 +838,11 @@ snippet: " " frame size: 14 parameter count: 1 -bytecode array length: 483 +bytecode array length: 480 bytecodes: [ B(Ldar), R(new_target), - B(JumpIfUndefined), U8(26), - B(CallRuntime), U16(Runtime::k_GeneratorGetContext), R(new_target), U8(1), + B(JumpIfUndefined), U8(25), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetContext), R(new_target), U8(1), B(PushContext), R(4), B(ResumeGenerator), R(new_target), B(Star), R(3), @@ -912,7 +912,7 @@ bytecodes: [ B(JumpIfFalse), U8(4), B(Jump), U8(6), B(PopContext), R(2), - B(Jump), U8(187), + B(Jump), U8(185), B(Ldar), R(3), B(SwitchOnSmiNoFeedback), U8(4), U8(1), I8(0), B(LdaSmi), I8(-2), @@ -925,7 +925,7 @@ bytecodes: [ B(Star), R(9), B(LdaSmi), I8(1), B(TestEqual), R(9), U8(6), - B(JumpIfFalse), U8(128), + B(JumpIfFalse), U8(126), /* 23 E> */ B(StackCheck), /* 52 S> */ B(LdaImmutableContextSlot), R(1), U8(4), U8(0), B(Star), R(9), @@ -948,9 +948,9 @@ bytecodes: [ /* 61 S> */ B(Return), B(LdaSmi), I8(-2), B(Star), R(3), - B(CallRuntime), U16(Runtime::k_GeneratorGetInputOrDebugPos), R(9), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetInputOrDebugPos), R(9), U8(1), B(Star), R(10), - B(CallRuntime), U16(Runtime::k_GeneratorGetResumeMode), R(9), U8(1), + B(InvokeIntrinsic), U8(Runtime::k_GeneratorGetResumeMode), R(9), U8(1), B(Star), R(11), B(LdaZero), B(TestEqualStrictNoFeedback), R(11), @@ -978,7 +978,7 @@ bytecodes: [ B(StaContextSlot), R(1), U8(9), U8(0), B(LdaCurrentContextSlot), U8(4), /* 59 E> */ B(StaContextSlot), R(1), U8(7), U8(0), - B(JumpLoop), U8(157), I8(1), + B(JumpLoop), U8(155), I8(1), B(LdaContextSlot), R(1), U8(9), U8(0), B(Star), R(9), B(LdaSmi), I8(1), @@ -987,7 +987,7 @@ bytecodes: [ B(PopContext), R(2), B(Jump), U8(10), B(PopContext), R(2), - B(Wide), B(JumpLoop), U16(266), I16(0), + B(Wide), B(JumpLoop), U16(264), I16(0), B(PopContext), R(1), B(LdaUndefined), B(Star), R(9), @@ -1064,7 +1064,7 @@ constant pool: [ Smi [9], ] handlers: [ - [61, 437, 443], - [64, 384, 386], + [60, 434, 440], + [63, 381, 383], ]