Index: src/frames-inl.h |
diff --git a/src/frames-inl.h b/src/frames-inl.h |
index 824c1a762046f7f24fbdfbb1c9b7150542732764..815bb5617754028f3685417c665de362c2864e72 100644 |
--- a/src/frames-inl.h |
+++ b/src/frames-inl.h |
@@ -77,6 +77,18 @@ inline bool StackHandler::is_finally() const { |
} |
+inline Context* StackHandler::context() const { |
+ const int offset = StackHandlerConstants::kContextOffset; |
+ return Context::cast(Memory::Object_at(address() + offset)); |
+} |
+ |
+ |
+inline Code* StackHandler::code() const { |
+ const int offset = StackHandlerConstants::kCodeOffset; |
+ return Code::cast(Memory::Object_at(address() + offset)); |
+} |
+ |
+ |
inline StackHandler::Kind StackHandler::kind() const { |
const int offset = StackHandlerConstants::kStateIntOffset; |
return KindField::decode(Memory::unsigned_at(address() + offset)); |
@@ -89,6 +101,12 @@ inline unsigned StackHandler::index() const { |
} |
+inline Address StackHandler::frame_pointer() const { |
+ const int offset = StackHandlerConstants::kFPOffset; |
+ return Memory::Address_at(address() + offset); |
+} |
+ |
+ |
inline Object** StackHandler::context_address() const { |
const int offset = StackHandlerConstants::kContextOffset; |
return reinterpret_cast<Object**>(address() + offset); |