| Index: src/objects.h
|
| diff --git a/src/objects.h b/src/objects.h
|
| index e7175cccb5a622a1aa6639ec67b92899cc8ff295..3be957c84f27955917f67b11332a3a6b888783c6 100644
|
| --- a/src/objects.h
|
| +++ b/src/objects.h
|
| @@ -2469,16 +2469,6 @@ class JSObject: public JSReceiver {
|
| // Returns the number of enumerable elements.
|
| int GetEnumElementKeys(FixedArray* storage);
|
|
|
| - // Add a property to a fast-case object using a map transition to
|
| - // new_map.
|
| - // TODO(mstarzinger): Only public because of SetPropertyUsingTransition!
|
| - MUST_USE_RESULT MaybeObject* AddFastPropertyUsingMap(
|
| - Map* new_map,
|
| - Name* name,
|
| - Object* value,
|
| - int field_index,
|
| - Representation representation);
|
| -
|
| MUST_USE_RESULT MaybeObject* ReplaceSlowProperty(
|
| Name* name,
|
| Object* value,
|
| @@ -2506,20 +2496,6 @@ class JSObject: public JSReceiver {
|
| Representation new_representation,
|
| StoreMode store_mode);
|
|
|
| - // Add a property to an object.
|
| - // TODO(mstarzinger): Only public because of SetPropertyUsingTransition!
|
| - static Handle<Object> AddProperty(
|
| - Handle<JSObject> object,
|
| - Handle<Name> name,
|
| - Handle<Object> value,
|
| - PropertyAttributes attributes,
|
| - StrictModeFlag strict_mode,
|
| - StoreFromKeyed store_mode = MAY_BE_STORE_FROM_KEYED,
|
| - ExtensibilityCheck extensibility_check = PERFORM_EXTENSIBILITY_CHECK,
|
| - ValueType value_type = OPTIMAL_REPRESENTATION,
|
| - StoreMode mode = ALLOW_AS_CONSTANT,
|
| - TransitionFlag flag = INSERT_TRANSITION);
|
| -
|
| // Convert the object to use the canonical dictionary
|
| // representation. If the object is expected to have additional properties
|
| // added this number can be indicated to have the backing store allocated to
|
| @@ -2760,6 +2736,24 @@ class JSObject: public JSReceiver {
|
| Handle<Object> value,
|
| PropertyAttributes attributes,
|
| StrictModeFlag strict_mode);
|
| + // TODO(mstarzinger): Fully handlify this one!
|
| + static MaybeObject* SetPropertyUsingTransition(LookupResult* lookup,
|
| + Handle<Name> name,
|
| + Handle<Object> value,
|
| + PropertyAttributes attributes);
|
| +
|
| + // Add a property to an object.
|
| + static Handle<Object> AddProperty(
|
| + Handle<JSObject> object,
|
| + Handle<Name> name,
|
| + Handle<Object> value,
|
| + PropertyAttributes attributes,
|
| + StrictModeFlag strict_mode,
|
| + StoreFromKeyed store_mode = MAY_BE_STORE_FROM_KEYED,
|
| + ExtensibilityCheck extensibility_check = PERFORM_EXTENSIBILITY_CHECK,
|
| + ValueType value_type = OPTIMAL_REPRESENTATION,
|
| + StoreMode mode = ALLOW_AS_CONSTANT,
|
| + TransitionFlag flag = INSERT_TRANSITION);
|
|
|
| // Add a constant function property to a fast-case object.
|
| // This leaves a CONSTANT_TRANSITION in the old map, and
|
| @@ -2772,11 +2766,6 @@ class JSObject: public JSReceiver {
|
| Handle<Object> constant,
|
| PropertyAttributes attributes,
|
| TransitionFlag flag);
|
| - MUST_USE_RESULT MaybeObject* AddConstantProperty(
|
| - Name* name,
|
| - Object* constant,
|
| - PropertyAttributes attributes,
|
| - TransitionFlag flag);
|
|
|
| // Add a property to a fast-case object.
|
| static void AddFastProperty(Handle<JSObject> object,
|
| @@ -2786,22 +2775,21 @@ class JSObject: public JSReceiver {
|
| StoreFromKeyed store_mode,
|
| ValueType value_type,
|
| TransitionFlag flag);
|
| - MUST_USE_RESULT MaybeObject* AddFastProperty(
|
| +
|
| + // Add a property to a fast-case object using a map transition to
|
| + // new_map.
|
| + MUST_USE_RESULT MaybeObject* AddFastPropertyUsingMap(
|
| + Map* new_map,
|
| Name* name,
|
| Object* value,
|
| - PropertyAttributes attributes,
|
| - StoreFromKeyed store_mode,
|
| - ValueType value_type,
|
| - TransitionFlag flag);
|
| + int field_index,
|
| + Representation representation);
|
|
|
| // Add a property to a slow-case object.
|
| static void AddSlowProperty(Handle<JSObject> object,
|
| Handle<Name> name,
|
| Handle<Object> value,
|
| PropertyAttributes attributes);
|
| - MUST_USE_RESULT MaybeObject* AddSlowProperty(Name* name,
|
| - Object* value,
|
| - PropertyAttributes attributes);
|
|
|
| static Handle<Object> DeleteProperty(Handle<JSObject> object,
|
| Handle<Name> name,
|
| @@ -9022,6 +9010,9 @@ class PropertyCell: public Cell {
|
| // 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.
|
| + static void SetValueInferType(Handle<PropertyCell> cell,
|
| + Handle<Object> value,
|
| + WriteBarrierMode mode = UPDATE_WRITE_BARRIER);
|
| MUST_USE_RESULT MaybeObject* SetValueInferType(
|
| Object* value,
|
| WriteBarrierMode mode = UPDATE_WRITE_BARRIER);
|
|
|