| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef VM_STACK_FRAME_H_ | 5 #ifndef VM_STACK_FRAME_H_ |
| 6 #define VM_STACK_FRAME_H_ | 6 #define VM_STACK_FRAME_H_ |
| 7 | 7 |
| 8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
| 9 #include "vm/object.h" | 9 #include "vm/object.h" |
| 10 #include "vm/stub_code.h" | 10 #include "vm/stub_code.h" |
| (...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 143 // dart code. | 143 // dart code. |
| 144 class EntryFrame : public StackFrame { | 144 class EntryFrame : public StackFrame { |
| 145 public: | 145 public: |
| 146 bool IsValid() const { | 146 bool IsValid() const { |
| 147 return StubCode::InInvocationStubForIsolate(isolate(), pc()); | 147 return StubCode::InInvocationStubForIsolate(isolate(), pc()); |
| 148 } | 148 } |
| 149 bool IsDartFrame(bool validate = true) const { return false; } | 149 bool IsDartFrame(bool validate = true) const { return false; } |
| 150 bool IsStubFrame() const { return false; } | 150 bool IsStubFrame() const { return false; } |
| 151 bool IsEntryFrame() const { return true; } | 151 bool IsEntryFrame() const { return true; } |
| 152 | 152 |
| 153 RawContext* SavedContext() const; | |
| 154 | |
| 155 // Visit objects in the frame. | 153 // Visit objects in the frame. |
| 156 virtual void VisitObjectPointers(ObjectPointerVisitor* visitor); | 154 virtual void VisitObjectPointers(ObjectPointerVisitor* visitor); |
| 157 | 155 |
| 158 protected: | 156 protected: |
| 159 virtual const char* GetName() const { return "entry"; } | 157 virtual const char* GetName() const { return "entry"; } |
| 160 | 158 |
| 161 private: | 159 private: |
| 162 explicit EntryFrame(Isolate* isolate) : StackFrame(isolate) { } | 160 explicit EntryFrame(Isolate* isolate) : StackFrame(isolate) { } |
| 163 | 161 |
| 164 friend class StackFrameIterator; | 162 friend class StackFrameIterator; |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 326 uword pc_; | 324 uword pc_; |
| 327 GrowableArray<DeoptInstr*> deopt_instructions_; | 325 GrowableArray<DeoptInstr*> deopt_instructions_; |
| 328 Array& object_table_; | 326 Array& object_table_; |
| 329 | 327 |
| 330 DISALLOW_COPY_AND_ASSIGN(InlinedFunctionsIterator); | 328 DISALLOW_COPY_AND_ASSIGN(InlinedFunctionsIterator); |
| 331 }; | 329 }; |
| 332 | 330 |
| 333 } // namespace dart | 331 } // namespace dart |
| 334 | 332 |
| 335 #endif // VM_STACK_FRAME_H_ | 333 #endif // VM_STACK_FRAME_H_ |
| OLD | NEW |