Index: runtime/vm/stub_code_x64.cc |
=================================================================== |
--- runtime/vm/stub_code_x64.cc (revision 22469) |
+++ runtime/vm/stub_code_x64.cc (working copy) |
@@ -14,6 +14,7 @@ |
#include "vm/object_store.h" |
#include "vm/resolver.h" |
#include "vm/scavenger.h" |
+#include "vm/stack_frame.h" |
#include "vm/stub_code.h" |
@@ -729,8 +730,9 @@ |
// Save the top exit frame info. Use RAX as a temporary register. |
// StackFrameIterator reads the top exit frame info saved in this frame. |
- // The constant kExitLinkOffsetInEntryFrame must be kept in sync with the |
- // code below: kExitLinkOffsetInEntryFrame = -8 * kWordSize. |
+ // The constant kExitLinkSlotFromEntryFp must be kept in sync with the |
+ // code below. |
+ ASSERT(kExitLinkSlotFromEntryFp == -8); |
__ movq(RAX, Address(R8, Isolate::top_exit_frame_info_offset())); |
__ pushq(RAX); |
__ movq(Address(R8, Isolate::top_exit_frame_info_offset()), Immediate(0)); |
@@ -738,10 +740,11 @@ |
// Save the old Context pointer. Use RAX as a temporary register. |
// Note that VisitObjectPointers will find this saved Context pointer during |
// GC marking, since it traverses any information between SP and |
- // FP - kExitLinkOffsetInEntryFrame. |
+ // FP - kExitLinkSlotFromEntryFp * kWordSize. |
// EntryFrame::SavedContext reads the context saved in this frame. |
- // The constant kSavedContextOffsetInEntryFrame must be kept in sync with |
- // the code below: kSavedContextOffsetInEntryFrame = -9 * kWordSize. |
+ // The constant kSavedContextSlotFromEntryFp must be kept in sync with |
+ // the code below. |
+ ASSERT(kSavedContextSlotFromEntryFp == -9); |
__ movq(RAX, Address(R8, Isolate::top_context_offset())); |
__ pushq(RAX); |