Index: src/frames.h |
diff --git a/src/frames.h b/src/frames.h |
index 0cb69c59bffabaa31f1694eff7ad4c3f451dbf35..c1fdf3b1483013af22ef88dc36bfac76c73db8f2 100644 |
--- a/src/frames.h |
+++ b/src/frames.h |
@@ -544,14 +544,14 @@ class StandardFrame: public StackFrame { |
class FrameSummary BASE_EMBEDDED { |
public: |
- FrameSummary(Object* receiver, JSFunction* function, Code* code, int offset, |
+ FrameSummary(Object* receiver, JSFunction* function, |
+ AbstractCode* abstract_code, int code_offset, |
bool is_constructor); |
Handle<Object> receiver() { return receiver_; } |
Handle<JSFunction> function() { return function_; } |
- Handle<Code> code() { return code_; } |
- Address pc() { return code_->address() + offset_; } |
- int offset() { return offset_; } |
+ Handle<AbstractCode> abstract_code() { return abstract_code_; } |
+ int code_offset() { return code_offset_; } |
bool is_constructor() { return is_constructor_; } |
void Print(); |
@@ -559,8 +559,8 @@ class FrameSummary BASE_EMBEDDED { |
private: |
Handle<Object> receiver_; |
Handle<JSFunction> function_; |
- Handle<Code> code_; |
- int offset_; |
+ Handle<AbstractCode> abstract_code_; |
+ int code_offset_; |
bool is_constructor_; |
}; |
@@ -732,6 +732,9 @@ class InterpretedFrame : public JavaScriptFrame { |
// unwinding to continue execution at a different bytecode offset. |
void PatchBytecodeOffset(int new_offset); |
+ // Build a list with summaries for this frame including all inlined frames. |
+ void Summarize(List<FrameSummary>* frames) override; |
+ |
protected: |
inline explicit InterpretedFrame(StackFrameIteratorBase* iterator); |