Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index c7093a817bfc46bb939701f7a63497de22a1261d..675c2da57e1df433b48bfecb3f380cf31a4b9fa1 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -4174,6 +4174,11 @@ class Code: public HeapObject { |
// it is only used by the garbage collector itself. |
DECL_ACCESSORS(gc_metadata, Object) |
+ // [context_disposed_count]: The value of the global_context_disposed_count |
+ // at the moment when this code object was created. |
+ inline void set_context_disposed_count(int count); |
+ inline int context_disposed_count(); |
+ |
// Unchecked accessors to be used during GC. |
inline ByteArray* unchecked_relocation_info(); |
inline FixedArray* unchecked_deoptimization_data(); |
@@ -4426,8 +4431,9 @@ class Code: public HeapObject { |
static const int kTypeFeedbackInfoOffset = |
kDeoptimizationDataOffset + kPointerSize; |
static const int kGCMetadataOffset = kTypeFeedbackInfoOffset + kPointerSize; |
- static const int kFlagsOffset = kGCMetadataOffset + kPointerSize; |
- |
+ static const int kContextDisposedCountOffset = |
+ kGCMetadataOffset + kPointerSize; |
+ static const int kFlagsOffset = kContextDisposedCountOffset + kIntSize; |
Vyacheslav Egorov (Chromium)
2012/03/22 14:47:05
I wonder how big our Code object will become with
|
static const int kKindSpecificFlagsOffset = kFlagsOffset + kIntSize; |
static const int kKindSpecificFlagsSize = 2 * kIntSize; |
@@ -5322,6 +5328,11 @@ class SharedFunctionInfo: public HeapObject { |
inline int ast_node_count(); |
inline void set_ast_node_count(int count); |
+ // The value of the global_context_disposed_count at the moment |
+ // when the opt_count was reset. |
+ inline int context_disposed_count(); |
+ inline void set_context_disposed_count(int count); |
+ |
// Add information on assignments of the form this.x = ...; |
void SetThisPropertyAssignmentsInfo( |
bool has_only_simple_this_property_assignments, |
@@ -5496,8 +5507,10 @@ class SharedFunctionInfo: public HeapObject { |
kInferredNameOffset + kPointerSize; |
static const int kThisPropertyAssignmentsOffset = |
kInitialMapOffset + kPointerSize; |
- static const int kProfilerTicksOffset = |
+ static const int kContextDisposedCountOffset = |
kThisPropertyAssignmentsOffset + kPointerSize; |
+ static const int kProfilerTicksOffset = |
+ kContextDisposedCountOffset + kPointerSize; |
#if V8_HOST_ARCH_32_BIT |
// Smi fields. |
static const int kLengthOffset = |