Index: src/objects.h |
diff --git a/src/objects.h b/src/objects.h |
index c42e0e134b1e69b6f79e4779ad3e4f5429405d3e..ccc36639b2fd214899adfdb21bd62f0152b957fe 100644 |
--- a/src/objects.h |
+++ b/src/objects.h |
@@ -9726,44 +9726,33 @@ class Cell: public HeapObject { |
class PropertyCell: public Cell { |
public: |
- // [type]: type of the global property. |
- HeapType* type(); |
- void set_type(HeapType* value, WriteBarrierMode mode = UPDATE_WRITE_BARRIER); |
- |
// [dependent_code]: dependent code that depends on the type of the global |
// property. |
DECL_ACCESSORS(dependent_code, DependentCode) |
- // Sets the value of the cell and updates the type field to be the union |
- // of the cell's current type and the value's type. If the change causes |
- // a change of the type of the cell's contents, code dependent on the cell |
- // will be deoptimized. |
- // Usually returns the value that was passed in, but may perform |
- // non-observable modifications on it, such as internalize strings. |
- static Handle<Object> SetValueInferType(Handle<PropertyCell> cell, |
- Handle<Object> value); |
- |
// Computes the new type of the cell's contents for the given value, but |
- // without actually modifying the 'type' field. |
- static Handle<HeapType> UpdatedType(Handle<PropertyCell> cell, |
- Handle<Object> value); |
+ // without actually modifying the details. |
+ static PropertyCellType UpdatedType(Handle<PropertyCell> cell, |
+ Handle<Object> value, |
+ PropertyDetails details); |
+ static Handle<Object> UpdateCell(Handle<NameDictionary> dictionary, int entry, |
+ Handle<Object> value, |
+ PropertyDetails details); |
+ |
+ static Handle<PropertyCell> InvalidateEntry(Handle<NameDictionary> dictionary, |
+ int entry); |
static void AddDependentCompilationInfo(Handle<PropertyCell> cell, |
CompilationInfo* info); |
DECLARE_CAST(PropertyCell) |
- inline Address TypeAddress() { |
- return address() + kTypeOffset; |
- } |
- |
// Dispatched behavior. |
DECLARE_PRINTER(PropertyCell) |
DECLARE_VERIFIER(PropertyCell) |
// Layout description. |
- static const int kTypeOffset = kValueOffset + kPointerSize; |
- static const int kDependentCodeOffset = kTypeOffset + kPointerSize; |
+ static const int kDependentCodeOffset = kValueOffset + kPointerSize; |
static const int kSize = kDependentCodeOffset + kPointerSize; |
static const int kPointerFieldsBeginOffset = kValueOffset; |
@@ -9774,7 +9763,6 @@ class PropertyCell: public Cell { |
kSize> BodyDescriptor; |
private: |
- DECL_ACCESSORS(type_raw, Object) |
DISALLOW_IMPLICIT_CONSTRUCTORS(PropertyCell); |
}; |