| Index: src/objects-inl.h
|
| diff --git a/src/objects-inl.h b/src/objects-inl.h
|
| index ed66dc6423c8764ffb9c0778f8bb2192a9da259e..2c89a148f1bdf5ec5136e644a9e0b1232801a3ed 100644
|
| --- a/src/objects-inl.h
|
| +++ b/src/objects-inl.h
|
| @@ -286,6 +286,7 @@ bool Object::IsExternalTwoByteString() {
|
| String::cast(this)->IsTwoByteRepresentation();
|
| }
|
|
|
| +
|
| bool Object::HasValidElements() {
|
| // Dictionary is covered under FixedArray.
|
| return IsFixedArray() || IsFixedDoubleArray() || IsExternalArray() ||
|
| @@ -2723,14 +2724,6 @@ void DescriptorArray::SetRepresentation(int descriptor_index,
|
| }
|
|
|
|
|
| -void DescriptorArray::InitializeRepresentations(Representation representation) {
|
| - int length = number_of_descriptors();
|
| - for (int i = 0; i < length; i++) {
|
| - SetRepresentation(i, representation);
|
| - }
|
| -}
|
| -
|
| -
|
| Object** DescriptorArray::GetValueSlot(int descriptor_number) {
|
| ASSERT(descriptor_number < number_of_descriptors());
|
| return RawFieldOfElementAt(ToValueIndex(descriptor_number));
|
| @@ -2743,6 +2736,11 @@ Object* DescriptorArray::GetValue(int descriptor_number) {
|
| }
|
|
|
|
|
| +void DescriptorArray::SetValue(int descriptor_index, Object* value) {
|
| + set(ToValueIndex(descriptor_index), value);
|
| +}
|
| +
|
| +
|
| PropertyDetails DescriptorArray::GetDetails(int descriptor_number) {
|
| ASSERT(descriptor_number < number_of_descriptors());
|
| Object* details = get(ToDetailsIndex(descriptor_number));
|
| @@ -2761,6 +2759,12 @@ int DescriptorArray::GetFieldIndex(int descriptor_number) {
|
| }
|
|
|
|
|
| +HeapType* DescriptorArray::GetFieldType(int descriptor_number) {
|
| + ASSERT(GetDetails(descriptor_number).type() == FIELD);
|
| + return HeapType::cast(GetValue(descriptor_number));
|
| +}
|
| +
|
| +
|
| Object* DescriptorArray::GetConstant(int descriptor_number) {
|
| return GetValue(descriptor_number);
|
| }
|
|
|