Chromium Code Reviews| Index: runtime/vm/stack_frame_x64.h |
| =================================================================== |
| --- runtime/vm/stack_frame_x64.h (revision 29988) |
| +++ runtime/vm/stack_frame_x64.h (working copy) |
| @@ -16,20 +16,24 @@ |
| | saved RBP | (RBP of current frame) |
| | saved PC | (PC of current frame) |
| +--------------------+ |
| -Current frame | ... | <- RSP of current frame |
| - | first local | |
| - | caller's PP | |
| +Current frame |*... | <- RSP of current frame |
| + |*first local | |
| + |*caller's PP | |
| | PC marker | (current frame's code entry + offset) |
| | caller's RBP | <- RBP of current frame |
| | caller's ret addr | (PC of caller frame) |
| +--------------------+ |
| Caller frame | last parameter | <- RSP of caller frame |
| | ... | |
| + |
| + * against a slot indicates it needs to be traversed during GC. |
|
regis
2013/11/07 19:53:11
ditto
siva
2013/11/07 23:08:19
Done.
|
| */ |
| static const int kDartFrameFixedSize = 4; // PC marker, RBP, PP, PC. |
| static const int kSavedPcSlotFromSp = -1; |
| +static const int kFirstObjectSlotFromFp = -2; // Used by GC to traverse stack. |
| + |
| static const int kFirstLocalSlotFromFp = -3; |
| static const int kSavedCallerPpSlotFromFp = -2; |
| static const int kPcMarkerSlotFromFp = -1; |
| @@ -41,10 +45,9 @@ |
| static const int kSavedAboveReturnAddress = 3; // Saved above return address. |
| // Entry and exit frame layout. |
| -static const int kSavedContextSlotFromEntryFp = -10; |
| -static const int kExitLinkSlotFromEntryFp = -9; |
| +static const int kSavedContextSlotFromEntryFp = -9; |
| +static const int kExitLinkSlotFromEntryFp = -8; |
| } // namespace dart |
| #endif // VM_STACK_FRAME_X64_H_ |
| - |