Chromium Code Reviews| Index: runtime/vm/stack_frame_ia32.h |
| =================================================================== |
| --- runtime/vm/stack_frame_ia32.h (revision 22705) |
| +++ runtime/vm/stack_frame_ia32.h (working copy) |
| @@ -11,7 +11,8 @@ |
| | | <- TOS |
| Callee frame | ... | |
| - | current ret addr | (PC of current frame) |
| + | saved EBP | (EBP of current frame) |
| + | saved PC | (PC of current frame) |
| +--------------------+ |
| Current frame | ... | <- ESP of current frame |
| | first local | |
| @@ -23,13 +24,18 @@ |
| | ... | |
| */ |
| +static const int kDartFrameFixedSize = 3; // PC marker, EBP, PC. |
| static const int kSavedPcSlotFromSp = -1; |
| static const int kFirstLocalSlotFromFp = -2; |
| static const int kPcMarkerSlotFromFp = -1; |
| static const int kSavedCallerFpSlotFromFp = 0; |
| -static const int kParamEndSlotFromFp = 1; // Same slot as caller's ret addr. |
| +static const int kSavedCallerPcSlotFromFp = 1; |
| +static const int kParamEndSlotFromFp = 1; // One slot past last parameter. |
| static const int kCallerSpSlotFromFp = 2; |
| +// No pool pointer on IA32 (indicated by aliasing saved fp). |
| +static const int kSavedCallerPpSlotFromFp = kSavedCallerFpSlotFromFp; |
|
srdjan
2013/05/14 22:16:39
This looks fragile. Maybe implement as a getter in
regis
2013/05/14 23:23:42
I added a getter in the common header and left the
|
| + |
| // Entry and exit frame layout. |
| static const int kSavedContextSlotFromEntryFp = -5; |
| static const int kExitLinkSlotFromEntryFp = -4; |