Index: src/builtins/builtins-array-gen.cc |
diff --git a/src/builtins/builtins-array-gen.cc b/src/builtins/builtins-array-gen.cc |
index f96362f7240ff246faa6fff5d73fa435bf30502d..96a98b4f09addb9a6e8253741aa3c03c5d4fbfb5 100644 |
--- a/src/builtins/builtins-array-gen.cc |
+++ b/src/builtins/builtins-array-gen.cc |
@@ -1203,6 +1203,38 @@ TF_BUILTIN(ArrayForEachLoopContinuation, ArrayBuiltinCodeStubAssembler) { |
&ArrayBuiltinCodeStubAssembler::NullPostLoopAction); |
} |
+TF_BUILTIN(ArrayForEachLoopEagerDeoptContinuation, |
+ ArrayBuiltinCodeStubAssembler) { |
+ Node* context = Parameter(Descriptor::kContext); |
+ Node* receiver = Parameter(Descriptor::kReceiver); |
+ Node* callbackfn = Parameter(Descriptor::kCallbackFn); |
+ Node* this_arg = Parameter(Descriptor::kThisArg); |
+ Node* initial_k = Parameter(Descriptor::kInitialK); |
+ Node* len = Parameter(Descriptor::kLength); |
+ |
+ Callable stub(Builtins::CallableFor(isolate(), |
+ Builtins::kArrayForEachLoopContinuation)); |
+ Return(CallStub(stub, context, receiver, callbackfn, this_arg, |
+ UndefinedConstant(), receiver, initial_k, len, |
+ UndefinedConstant())); |
+} |
+ |
+TF_BUILTIN(ArrayForEachLoopLazyDeoptContinuation, |
+ ArrayBuiltinCodeStubAssembler) { |
+ Node* context = Parameter(Descriptor::kContext); |
+ Node* receiver = Parameter(Descriptor::kReceiver); |
+ Node* callbackfn = Parameter(Descriptor::kCallbackFn); |
+ Node* this_arg = Parameter(Descriptor::kThisArg); |
+ Node* initial_k = Parameter(Descriptor::kInitialK); |
+ Node* len = Parameter(Descriptor::kLength); |
+ |
+ Callable stub(Builtins::CallableFor(isolate(), |
+ Builtins::kArrayForEachLoopContinuation)); |
+ Return(CallStub(stub, context, receiver, callbackfn, this_arg, |
+ UndefinedConstant(), receiver, initial_k, len, |
+ UndefinedConstant())); |
+} |
+ |
TF_BUILTIN(ArrayForEach, ArrayBuiltinCodeStubAssembler) { |
Node* argc = |
ChangeInt32ToIntPtr(Parameter(BuiltinDescriptor::kArgumentsCount)); |