Index: src/frames.h |
diff --git a/src/frames.h b/src/frames.h |
index b4247c9bdbe97ef710dacb9e52cd8e173bab02df..6acf3c6afa98de3cb46f271e8af9f8935c3e61a4 100644 |
--- a/src/frames.h |
+++ b/src/frames.h |
@@ -114,23 +114,25 @@ |
class StandardFrameConstants : public AllStatic { |
public: |
// Fixed part of the frame consists of return address, caller fp, |
- // constant pool (if FLAG_enable_embedded_constant_pool), context, and |
- // function. StandardFrame::IterateExpressions assumes that kLastObjectOffset |
- // is the last object pointer. |
+ // constant pool (if FLAG_enable_ool_constant_pool), context, and function. |
+ // StandardFrame::IterateExpressions assumes that kLastObjectOffset is the |
+ // last object pointer. |
static const int kCPSlotSize = |
- FLAG_enable_embedded_constant_pool ? kPointerSize : 0; |
+ 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 - kCPSlotSize; |
- static const int kMarkerOffset = -2 * kPointerSize - kCPSlotSize; |
- static const int kContextOffset = -1 * kPointerSize - kCPSlotSize; |
- static const int kConstantPoolOffset = kCPSlotSize ? -1 * kPointerSize : 0; |
- static const int kCallerFPOffset = 0 * kPointerSize; |
- static const int kCallerPCOffset = +1 * kFPOnStackSize; |
- static const int kCallerSPOffset = kCallerPCOffset + 1 * kPCOnStackSize; |
- |
- static const int kLastObjectOffset = kContextOffset; |
+ static const int kFixedFrameSize = kPCOnStackSize + kFPOnStackSize + |
+ kFixedFrameSizeFromFp; |
+ 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; |
+ |
+ static const int kLastObjectOffset = FLAG_enable_ool_constant_pool ? |
+ kConstantPoolOffset : kContextOffset; |
}; |
@@ -213,8 +215,8 @@ |
void set_pc(Address pc) { *pc_address() = pc; } |
Address constant_pool() const { return *constant_pool_address(); } |
- void set_constant_pool(Address constant_pool) { |
- *constant_pool_address() = constant_pool; |
+ void set_constant_pool(ConstantPoolArray* constant_pool) { |
+ *constant_pool_address() = reinterpret_cast<Address>(constant_pool); |
} |
virtual void SetCallerFp(Address caller_fp) = 0; |
@@ -256,8 +258,7 @@ |
unsigned* stack_slots); |
virtual void Iterate(ObjectVisitor* v) const = 0; |
- static void IteratePc(ObjectVisitor* v, Address* pc_address, |
- Address* constant_pool_address, Code* holder); |
+ static void IteratePc(ObjectVisitor* v, Address* pc_address, Code* holder); |
// Sets a callback function for return-address rewriting profilers |
// to resolve the location of a return address to the location of the |
@@ -379,6 +380,7 @@ |
virtual Code* unchecked_code() const; |
Object*& code_slot() const; |
+ Object*& constant_pool_slot() const; |
// Garbage collection support. |
virtual void Iterate(ObjectVisitor* v) const; |