summaryrefslogtreecommitdiff
path: root/deps/v8/src/arm64/frame-constants-arm64.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/arm64/frame-constants-arm64.h')
-rw-r--r--deps/v8/src/arm64/frame-constants-arm64.h25
1 files changed, 23 insertions, 2 deletions
diff --git a/deps/v8/src/arm64/frame-constants-arm64.h b/deps/v8/src/arm64/frame-constants-arm64.h
index 882a57a851..a337079786 100644
--- a/deps/v8/src/arm64/frame-constants-arm64.h
+++ b/deps/v8/src/arm64/frame-constants-arm64.h
@@ -8,10 +8,31 @@
namespace v8 {
namespace internal {
+// The layout of an EntryFrame is as follows:
+//
+// slot Entry frame
+// +---------------------+-----------------------
+// 0 | bad frame pointer | <-- frame ptr
+// | (0xFFF.. FF) |
+// |- - - - - - - - - - -|
+// 1 | stack frame marker |
+// | (ENTRY) |
+// |- - - - - - - - - - -|
+// 2 | stack frame marker |
+// | (0) |
+// |- - - - - - - - - - -|
+// 3 | C entry FP |
+// |- - - - - - - - - - -|
+// 4 | JS entry frame |
+// | marker |
+// |- - - - - - - - - - -|
+// 5 | padding | <-- stack ptr
+// -----+---------------------+-----------------------
+//
class EntryFrameConstants : public AllStatic {
public:
- static const int kCallerFPOffset =
- -(StandardFrameConstants::kFixedFrameSizeFromFp + kPointerSize);
+ static const int kCallerFPOffset = -3 * kPointerSize;
+ static const int kFixedFrameSize = 6 * kPointerSize;
};
class ExitFrameConstants : public TypedFrameConstants {