| Index: src/frames.h
|
| diff --git a/src/frames.h b/src/frames.h
|
| index d2dbfe2815ba39fd116a4c25c130d9f5e2b2dfb3..11ec5e46ce3d5caaf054c15b0e3b015a89ea661f 100644
|
| --- a/src/frames.h
|
| +++ b/src/frames.h
|
| @@ -796,8 +796,9 @@ class StackFrameIteratorBase BASE_EMBEDDED {
|
|
|
| protected:
|
| // An iterator that iterates over a given thread's stack.
|
| - StackFrameIteratorBase(Isolate* isolate, bool can_access_heap_objects);
|
| -
|
| + StackFrameIteratorBase(Isolate* isolate,
|
| + bool can_access_heap_objects,
|
| + bool allow_builtins_on_stack);
|
| Isolate* isolate_;
|
| #define DECLARE_SINGLETON(ignore, type) type type##_;
|
| STACK_FRAME_TYPE_LIST(DECLARE_SINGLETON)
|
| @@ -805,6 +806,7 @@ class StackFrameIteratorBase BASE_EMBEDDED {
|
| StackFrame* frame_;
|
| StackHandler* handler_;
|
| const bool can_access_heap_objects_;
|
| + const bool allow_builtins_on_stack_;
|
|
|
| StackHandler* handler() const {
|
| ASSERT(!done());
|
| @@ -825,7 +827,7 @@ class StackFrameIteratorBase BASE_EMBEDDED {
|
| class StackFrameIterator: public StackFrameIteratorBase {
|
| public:
|
| // An iterator that iterates over the isolate's current thread's stack,
|
| - explicit StackFrameIterator(Isolate* isolate);
|
| + StackFrameIterator(Isolate* isolate, bool allow_builtins_on_stack = false);
|
| // An iterator that iterates over a given thread's stack.
|
| StackFrameIterator(Isolate* isolate, ThreadLocalTop* t);
|
|
|
| @@ -846,7 +848,8 @@ class StackFrameIterator: public StackFrameIteratorBase {
|
| // Iterator that supports iterating through all JavaScript frames.
|
| class JavaScriptFrameIterator BASE_EMBEDDED {
|
| public:
|
| - inline explicit JavaScriptFrameIterator(Isolate* isolate);
|
| + inline JavaScriptFrameIterator(Isolate* isolate,
|
| + bool allow_builtins_on_stack = false);
|
| inline JavaScriptFrameIterator(Isolate* isolate, ThreadLocalTop* top);
|
| // Skip frames until the frame with the given id is reached.
|
| JavaScriptFrameIterator(Isolate* isolate, StackFrame::Id id);
|
| @@ -872,7 +875,8 @@ class JavaScriptFrameIterator BASE_EMBEDDED {
|
| // functions in runtime.js.
|
| class StackTraceFrameIterator: public JavaScriptFrameIterator {
|
| public:
|
| - explicit StackTraceFrameIterator(Isolate* isolate);
|
| + StackTraceFrameIterator(Isolate* isolate,
|
| + bool allow_builtins_on_stack = false);
|
| void Advance();
|
|
|
| private:
|
|
|