Index: src/deoptimizer.h |
diff --git a/src/deoptimizer.h b/src/deoptimizer.h |
index 39abac9bc7c6a53c49b01201c984f23f34bd3b39..e01d58006baa8aba021219c872bba7ac58084df6 100644 |
--- a/src/deoptimizer.h |
+++ b/src/deoptimizer.h |
@@ -159,6 +159,7 @@ class TranslatedFrame { |
kArgumentsAdaptor, |
kConstructStub, |
kCompiledStub, |
+ kBuiltinContinuation, |
kInvalid |
}; |
@@ -230,6 +231,8 @@ class TranslatedFrame { |
static TranslatedFrame ConstructStubFrame(BailoutId bailout_id, |
SharedFunctionInfo* shared_info, |
int height); |
+ static TranslatedFrame BuiltinContinuationFrame( |
+ BailoutId bailout_id, SharedFunctionInfo* shared_info, int height); |
static TranslatedFrame CompiledStubFrame(int height, Isolate* isolate) { |
return TranslatedFrame(kCompiledStub, isolate, nullptr, height); |
} |
@@ -568,6 +571,8 @@ class Deoptimizer : public Malloced { |
int frame_index, bool is_setter_stub_frame); |
void DoComputeCompiledStubFrame(TranslatedFrame* translated_frame, |
int frame_index); |
+ void DoComputeBuiltinContinuation(TranslatedFrame* translated_frame, |
+ int frame_index); |
void WriteTranslatedValueToOutput( |
TranslatedFrame::iterator* iterator, int* input_index, int frame_index, |
@@ -925,6 +930,7 @@ class TranslationIterator BASE_EMBEDDED { |
V(BEGIN) \ |
V(JS_FRAME) \ |
V(INTERPRETED_FRAME) \ |
+ V(BUILTIN_CONTINUATION_FRAME) \ |
V(CONSTRUCT_STUB_FRAME) \ |
V(GETTER_STUB_FRAME) \ |
V(SETTER_STUB_FRAME) \ |
@@ -980,6 +986,8 @@ class Translation BASE_EMBEDDED { |
void BeginTailCallerFrame(int literal_id); |
void BeginConstructStubFrame(BailoutId bailout_id, int literal_id, |
unsigned height); |
+ void BeginBuiltinContinuationFrame(BailoutId bailout_id, int literal_id, |
+ unsigned height); |
void BeginGetterStubFrame(int literal_id); |
void BeginSetterStubFrame(int literal_id); |
void BeginArgumentsObject(int args_length); |