Index: src/compiler/frame-states.h |
diff --git a/src/compiler/frame-states.h b/src/compiler/frame-states.h |
index 0d0ec47f88c99384c2e60bf9602a9592c0d0bcbb..81b853b33f63372df854be10153513447e05c6ab 100644 |
--- a/src/compiler/frame-states.h |
+++ b/src/compiler/frame-states.h |
@@ -5,6 +5,7 @@ |
#ifndef V8_COMPILER_FRAME_STATES_H_ |
#define V8_COMPILER_FRAME_STATES_H_ |
+#include "src/builtins/builtins.h" |
#include "src/handles.h" |
#include "src/utils.h" |
@@ -82,7 +83,8 @@ enum class FrameStateType { |
kTailCallerFunction, // Represents a frame removed by tail call elimination. |
kConstructStub, // Represents a ConstructStubFrame. |
kGetterStub, // Represents a GetterStubFrame. |
- kSetterStub // Represents a SetterStubFrame. |
+ kSetterStub, // Represents a SetterStubFrame. |
+ kBuiltinContinuation // Represents a continuation to a stub |
}; |
class FrameStateFunctionInfo { |
@@ -160,6 +162,22 @@ static const int kFrameStateFunctionInput = 4; |
static const int kFrameStateOuterStateInput = 5; |
static const int kFrameStateInputCount = kFrameStateOuterStateInput + 1; |
+class JSGraph; |
+class Node; |
+ |
+enum CheckpointMode { CREATE_CHECKPOINT, DONT_CREATE_CHECKPOINT }; |
+ |
+std::pair<Node*, Node*> CreateStubBuiltinContinuationFrameState( |
+ JSGraph* graph, Builtins::Name name, Node* context, Node** parameters, |
+ int parameter_count, Node* effect, Node* control, Node* outer_frame_state, |
+ CheckpointMode mode); |
+ |
+std::pair<Node*, Node*> CreateJavaScriptBuiltinContinuationFrameState( |
+ JSGraph* graph, Handle<SharedFunctionInfo> shared, Builtins::Name name, |
+ Node* target, Node* context, Node** stack_parameters, |
+ int stack_parameter_count, Node* effect, Node* control, |
+ Node* outer_frame_state, CheckpointMode mode); |
+ |
} // namespace compiler |
} // namespace internal |
} // namespace v8 |