| Index: src/transitions-inl.h
|
| diff --git a/src/transitions-inl.h b/src/transitions-inl.h
|
| index 5030616e4ea4ecc21bcf1092f80c753e0f849eb8..f2f0c3b7491cf86fc9d139bf030c10f4b233aae8 100644
|
| --- a/src/transitions-inl.h
|
| +++ b/src/transitions-inl.h
|
| @@ -83,26 +83,22 @@ void TransitionArray::set_elements_transition(Map* transition_map,
|
|
|
|
|
| DescriptorArray* TransitionArray::descriptors() {
|
| - return DescriptorArray::cast(descriptors_pointer()->value());
|
| + return DescriptorArray::cast(get(kDescriptorsIndex));
|
| }
|
|
|
|
|
| -void TransitionArray::set_descriptors(DescriptorArray* descriptors) {
|
| - ASSERT(!this->descriptors()->IsDescriptorArray() ||
|
| - descriptors->number_of_descriptors() == 0 ||
|
| - descriptors->HasEnumCache() ||
|
| - !this->descriptors()->HasEnumCache());
|
| - descriptors_pointer()->set_value(descriptors);
|
| -}
|
| -
|
| -
|
| -JSGlobalPropertyCell* TransitionArray::descriptors_pointer() {
|
| - return JSGlobalPropertyCell::cast(get(kDescriptorsPointerIndex));
|
| +void TransitionArray::set_descriptors(DescriptorArray* descriptors,
|
| + WriteBarrierMode mode) {
|
| + Heap* heap = GetHeap();
|
| + WRITE_FIELD(this, kDescriptorsOffset, descriptors);
|
| + CONDITIONAL_WRITE_BARRIER(
|
| + heap, this, kDescriptorsOffset, descriptors, mode);
|
| }
|
|
|
|
|
| -void TransitionArray::set_descriptors_pointer(JSGlobalPropertyCell* pointer) {
|
| - set(kDescriptorsPointerIndex, pointer);
|
| +Object** TransitionArray::GetDescriptorsSlot() {
|
| + return HeapObject::RawField(reinterpret_cast<HeapObject*>(this),
|
| + kDescriptorsOffset);
|
| }
|
|
|
|
|
| @@ -196,7 +192,7 @@ PropertyDetails TransitionArray::GetTargetDetails(int transition_number) {
|
|
|
|
|
| int TransitionArray::Search(String* name) {
|
| - return internal::Search<ALL_ENTRIES>(this, name);
|
| + return internal::Search(this, name);
|
| }
|
|
|
|
|
|
|