Index: src/frames.h |
diff --git a/src/frames.h b/src/frames.h |
index 30f7e1f00e552575295b074b08d5bb4396461cbb..6a9570eead57305feb5eec5bde7de33b88f38089 100644 |
--- a/src/frames.h |
+++ b/src/frames.h |
@@ -136,6 +136,7 @@ class StackHandler BASE_EMBEDDED { |
V(EXIT, ExitFrame) \ |
V(JAVA_SCRIPT, JavaScriptFrame) \ |
V(OPTIMIZED, OptimizedFrame) \ |
+ V(STUB, StubFrame) \ |
V(INTERNAL, InternalFrame) \ |
V(CONSTRUCT, ConstructFrame) \ |
V(ARGUMENTS_ADAPTOR, ArgumentsAdaptorFrame) |
@@ -555,7 +556,33 @@ class JavaScriptFrame: public StandardFrame { |
}; |
-class OptimizedFrame : public JavaScriptFrame { |
+class CompiledFrame : public JavaScriptFrame { |
+ public: |
+ virtual Type type() const = 0; |
+ |
+ // GC support. |
+ virtual void Iterate(ObjectVisitor* v) const; |
+ |
+ protected: |
+ inline explicit CompiledFrame(StackFrameIterator* iterator); |
+}; |
+ |
+ |
+class StubFrame : public CompiledFrame { |
+ public: |
+ virtual Type type() const { return STUB; } |
+ |
+ // GC support. |
+ virtual void Iterate(ObjectVisitor* v) const; |
+ |
+ protected: |
+ inline explicit StubFrame(StackFrameIterator* iterator); |
+ |
+ friend class StackFrameIterator; |
+}; |
+ |
+ |
+class OptimizedFrame : public CompiledFrame { |
public: |
virtual Type type() const { return OPTIMIZED; } |