Index: runtime/vm/stack_frame_arm64.h |
=================================================================== |
--- runtime/vm/stack_frame_arm64.h (revision 0) |
+++ runtime/vm/stack_frame_arm64.h (revision 0) |
@@ -0,0 +1,34 @@ |
+// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
+// for details. All rights reserved. Use of this source code is governed by a |
+// BSD-style license that can be found in the LICENSE file. |
+ |
+#ifndef VM_STACK_FRAME_ARM64_H_ |
+#define VM_STACK_FRAME_ARM64_H_ |
+ |
+namespace dart { |
+ |
+// TODO(zra): |
+// These are the values for ARM. Fill in the values for ARM64 as they are |
+// needed. |
+ |
+static const int kDartFrameFixedSize = 4; // PP, FP, LR, PC marker. |
+static const int kSavedPcSlotFromSp = -2; |
+ |
+static const int kFirstObjectSlotFromFp = -1; // Used by GC to traverse stack. |
+ |
+static const int kFirstLocalSlotFromFp = -2; |
+static const int kSavedCallerPpSlotFromFp = -1; |
+static const int kSavedCallerFpSlotFromFp = 0; |
+static const int kSavedCallerPcSlotFromFp = 1; |
+static const int kPcMarkerSlotFromFp = 2; |
+static const int kParamEndSlotFromFp = 2; // One slot past last parameter. |
+static const int kCallerSpSlotFromFp = 3; |
+ |
+// Entry and exit frame layout. |
+static const int kSavedContextSlotFromEntryFp = -27; |
+static const int kExitLinkSlotFromEntryFp = -26; |
+static const int kSavedVMTagSlotFromEntryFp = -25; |
+ |
+} // namespace dart |
+ |
+#endif // VM_STACK_FRAME_ARM64_H_ |