Index: src/frames.h |
diff --git a/src/frames.h b/src/frames.h |
index 230144d6800a9f4c8134c1903421aa6f3a6e8e28..5da3f8f96ad337d473b584145a511a204dbc9166 100644 |
--- a/src/frames.h |
+++ b/src/frames.h |
@@ -167,15 +167,19 @@ class StackHandler BASE_EMBEDDED { |
class StandardFrameConstants : public AllStatic { |
public: |
// Fixed part of the frame consists of return address, caller fp, |
- // context and function. |
+ // constant pool (if FLAG_enable_ool_constant_pool), context, and function. |
// StandardFrame::IterateExpressions assumes that kContextOffset is the last |
// object pointer. |
- static const int kFixedFrameSizeFromFp = 2 * kPointerSize; |
+ static const int kCPSlotSize = |
+ FLAG_enable_ool_constant_pool ? kPointerSize : 0; |
+ static const int kFixedFrameSizeFromFp = 2 * kPointerSize + kCPSlotSize; |
static const int kFixedFrameSize = kPCOnStackSize + kFPOnStackSize + |
kFixedFrameSizeFromFp; |
- static const int kExpressionsOffset = -3 * kPointerSize; |
- static const int kMarkerOffset = -2 * kPointerSize; |
- static const int kContextOffset = -1 * kPointerSize; |
+ static const int kExpressionsOffset = -3 * kPointerSize - kCPSlotSize; |
+ static const int kMarkerOffset = -2 * kPointerSize - kCPSlotSize; |
+ static const int kContextOffset = -1 * kPointerSize - kCPSlotSize; |
+ static const int kConstantPoolOffset = FLAG_enable_ool_constant_pool ? |
+ -1 * kPointerSize : 0; |
static const int kCallerFPOffset = 0 * kPointerSize; |
static const int kCallerPCOffset = +1 * kFPOnStackSize; |
static const int kCallerSPOffset = kCallerPCOffset + 1 * kPCOnStackSize; |
@@ -602,6 +606,7 @@ class JavaScriptFrame: public StandardFrame { |
// Architecture-specific register description. |
static Register fp_register(); |
static Register context_register(); |
+ static Register constant_pool_pointer_register(); |
static JavaScriptFrame* cast(StackFrame* frame) { |
ASSERT(frame->is_java_script()); |
@@ -758,6 +763,7 @@ class StubFailureTrampolineFrame: public StandardFrame { |
// Architecture-specific register description. |
static Register fp_register(); |
static Register context_register(); |
+ static Register constant_pool_pointer_register(); |
protected: |
inline explicit StubFailureTrampolineFrame( |