Index: src/objects.h |
=================================================================== |
--- src/objects.h (revision 564) |
+++ src/objects.h (working copy) |
@@ -166,6 +166,9 @@ |
uint32_t value_; |
}; |
+// Setter that skips the write barrier if mode is SKIP_WRITE_BARRIER. |
+enum WriteBarrierMode { SKIP_WRITE_BARRIER, UPDATE_WRITE_BARRIER }; |
+ |
// All Maps have a field instance_type containing a InstanceType. |
// It describes the type of the instances. |
// |
@@ -555,9 +558,10 @@ |
inline void set_##name(bool value); \ |
-#define DECL_ACCESSORS(name, type) \ |
- inline type* name(); \ |
- inline void set_##name(type* value); |
+#define DECL_ACCESSORS(name, type) \ |
+ inline type* name(); \ |
+ inline void set_##name(type* value, \ |
+ WriteBarrierMode mode = UPDATE_WRITE_BARRIER); \ |
class StringStream; |
@@ -1041,6 +1045,9 @@ |
// Casting. |
static inline HeapObject* cast(Object* obj); |
+ // Return the write barrier mode for this. |
+ inline WriteBarrierMode GetWriteBarrierMode(); |
+ |
// Dispatched behavior. |
void HeapObjectShortPrint(StringStream* accumulator); |
#ifdef DEBUG |
@@ -1355,6 +1362,11 @@ |
inline Object* FastPropertyAt(int index); |
inline Object* FastPropertyAtPut(int index, Object* value); |
+ // Access to set in object properties. |
+ inline Object* InObjectPropertyAtPut(int index, |
+ Object* value, |
+ WriteBarrierMode mode |
+ = UPDATE_WRITE_BARRIER); |
// initializes the body after properties slot, properties slot is |
// initialized by set_properties |
@@ -1479,17 +1491,14 @@ |
inline Object* get(int index); |
inline void set(int index, Object* value); |
+ // Setter with barrier mode. |
+ inline void set(int index, Object* value, WriteBarrierMode mode); |
+ |
// Setters for frequently used oddballs located in old space. |
inline void set_undefined(int index); |
inline void set_null(int index); |
inline void set_the_hole(int index); |
- // Setter that skips the write barrier if mode is SKIP_WRITE_BARRIER. |
- enum WriteBarrierMode { SKIP_WRITE_BARRIER, UPDATE_WRITE_BARRIER }; |
- inline void set(int index, Object* value, WriteBarrierMode mode); |
- // Return the write barrier mode for this. |
- inline WriteBarrierMode GetWriteBarrierMode(); |
- |
// Copy operations. |
inline Object* Copy(); |
Object* CopySize(int new_length); |