V8 Project
|
#include <transitions.h>
Private Member Functions | |
void | NoIncrementalWriteBarrierSet (int transition_number, Name *key, Map *target) |
void | NoIncrementalWriteBarrierCopyFrom (TransitionArray *origin, int origin_transition, int target_transition) |
DISALLOW_IMPLICIT_CONSTRUCTORS (TransitionArray) | |
Static Private Member Functions | |
static int | ToKeyIndex (int transition_number) |
static int | ToTargetIndex (int transition_number) |
static Handle< TransitionArray > | AllocateSimple (Isolate *isolate, Handle< Map > target) |
static Handle< TransitionArray > | NewWith (Handle< Map > map, Handle< Name > name, Handle< Map > target, SimpleTransitionFlag flag) |
Additional Inherited Members | |
![]() | |
enum | StoreFromKeyed { MAY_BE_STORE_FROM_KEYED , CERTAINLY_NOT_STORE_FROM_KEYED } |
enum | StorePropertyMode { NORMAL_PROPERTY , SUPER_PROPERTY } |
![]() | |
void | IteratePointers (ObjectVisitor *v, int start, int end) |
void | IteratePointer (ObjectVisitor *v, int offset) |
void | IterateNextCodeLink (ObjectVisitor *v, int offset) |
![]() | |
static void | NoWriteBarrierSet (FixedArray *array, int index, Object *value) |
static void | NoIncrementalWriteBarrierSet (FixedArray *array, int index, Object *value) |
Definition at line 35 of file transitions.h.
|
static |
Definition at line 15 of file transitions.cc.
References v8::internal::Handle< T >::cast(), v8::internal::Isolate::factory(), v8::internal::Smi::FromInt(), kPrototypeTransitionsIndex, number_of_transitions(), and ToKeyIndex().
Referenced by CopyInsert(), v8::internal::EnsureHasTransitionArray(), ExtendToFullTransitionArray(), and NewWith().
|
staticprivate |
Definition at line 24 of file transitions.cc.
References v8::internal::Handle< T >::cast(), v8::internal::Isolate::factory(), kSimpleTransitionSize, and kSimpleTransitionTarget.
Referenced by NewWith().
|
inline |
Definition at line 41 of file transitions-inl.h.
References v8::internal::FixedArray::get(), and kBackPointerStorageIndex.
Referenced by CopyInsert(), v8::internal::V8HeapExplorer::ExtractMapReferences(), and v8::internal::Map::GetBackPointer().
|
inlinestatic |
Definition at line 30 of file transitions-inl.h.
References DCHECK.
Referenced by v8::internal::Map::GetBackPointer(), and v8::internal::Map::SetBackPointer().
|
static |
Definition at line 88 of file transitions.cc.
References Allocate(), back_pointer_storage(), DCHECK, v8::internal::flag, v8::internal::HeapObject::GetIsolate(), GetKey(), GetPrototypeTransitions(), HasPrototypeTransitions(), v8::internal::Map::HasTransitionArray(), v8::internal::InsertionPointFound(), kNotFound, v8::internal::HeapObject::map(), name, NewWith(), number_of_transitions(), Search(), and ToKeyIndex().
Referenced by v8::internal::Map::ConnectTransition().
|
private |
|
static |
Definition at line 65 of file transitions.cc.
References Allocate(), DCHECK, kSimpleTransitionIndex, and ToKeyIndex().
Referenced by v8::internal::EnsureHasTransitionArray().
Definition at line 92 of file transitions-inl.h.
References DCHECK, v8::internal::FixedArray::get(), GetTarget(), IsSimpleTransition(), kSimpleTransitionIndex, v8::internal::Map::LastAdded(), number_of_transitions(), and ToKeyIndex().
Referenced by v8::internal::MarkCompactCollector::ClearMapTransitions(), CopyInsert(), v8::internal::Map::ExpectedTransitionKey(), GetSortedKey(), NoIncrementalWriteBarrierCopyFrom(), and Search().
Definition at line 85 of file transitions-inl.h.
References DCHECK, IsSimpleTransition(), number_of_transitions(), v8::internal::FixedArray::RawFieldOfElementAt(), and ToKeyIndex().
Referenced by v8::internal::MarkCompactCollector::ClearMapTransitions(), and v8::internal::StaticMarkingVisitor< StaticVisitor >::MarkTransitionArray().
|
inline |
Definition at line 61 of file transitions-inl.h.
References DCHECK, v8::internal::FixedArray::get(), IsFullTransitionArray(), and kPrototypeTransitionsIndex.
Referenced by v8::internal::TraversableMap::ChildIteratorNext(), CopyInsert(), and v8::internal::V8HeapExplorer::ExtractMapReferences().
|
inline |
Definition at line 79 of file transitions-inl.h.
References kPrototypeTransitionsOffset, and v8::internal::HeapObject::RawField().
Referenced by v8::internal::StaticMarkingVisitor< StaticVisitor >::MarkTransitionArray().
Definition at line 43 of file transitions.h.
References GetKey().
Definition at line 41 of file transitions.h.
Definition at line 111 of file transitions-inl.h.
References DCHECK, v8::internal::FixedArray::get(), IsSimpleTransition(), kSimpleTransitionIndex, kSimpleTransitionTarget, number_of_transitions(), and ToTargetIndex().
Referenced by v8::internal::MarkCompactCollector::ClearMapTransitions(), v8::internal::Map::DeprecateTarget(), v8::internal::Map::DeprecateTransitionTree(), v8::internal::Map::FindLastMatchMap(), v8::internal::Map::FindTransitionToField(), GetKey(), GetTargetDetails(), NoIncrementalWriteBarrierCopyFrom(), and v8::internal::Map::UpdateFieldType().
|
inline |
Definition at line 131 of file transitions-inl.h.
References v8::internal::Map::GetLastDescriptorDetails(), GetTarget(), and v8::internal::HeapObject::map().
Referenced by v8::internal::Map::ExpectedTransitionKey(), and v8::internal::Map::FindTransitionToField().
|
inline |
Definition at line 36 of file transitions-inl.h.
References v8::internal::HeapObject::GetHeap(), kNotFound, and Search().
|
inline |
Definition at line 55 of file transitions-inl.h.
References v8::internal::Smi::FromInt(), v8::internal::FixedArray::get(), IsFullTransitionArray(), and kPrototypeTransitionsIndex.
Referenced by v8::internal::TraversableMap::ChildIteratorNext(), CopyInsert(), v8::internal::V8HeapExplorer::ExtractMapReferences(), and v8::internal::StaticMarkingVisitor< StaticVisitor >::MarkTransitionArray().
|
inline |
Definition at line 107 of file transitions.h.
References IsSimpleTransition(), kFirstIndex, and v8::internal::FixedArrayBase::length().
Referenced by GetPrototypeTransitions(), HasPrototypeTransitions(), and SetPrototypeTransitions().
|
inline |
Definition at line 96 of file transitions.h.
References v8::internal::FixedArray::get(), kSimpleTransitionSize, kSimpleTransitionTarget, and v8::internal::FixedArrayBase::length().
Referenced by v8::internal::MarkCompactCollector::ClearMapTransitions(), v8::internal::Map::ExpectedTransitionKey(), v8::internal::V8HeapExplorer::ExtractMapReferences(), GetKey(), GetKeySlot(), GetTarget(), IsFullTransitionArray(), v8::internal::StaticMarkingVisitor< StaticVisitor >::MarkTransitionArray(), number_of_transitions(), Search(), SetKey(), and SetTarget().
|
staticprivate |
Definition at line 47 of file transitions.cc.
References Allocate(), AllocateSimple(), v8::internal::flag, v8::internal::Map::GetBackPointer(), v8::internal::HeapObject::map(), name, and v8::internal::SIMPLE_TRANSITION.
Referenced by CopyInsert().
|
inlineprivate |
Definition at line 33 of file transitions.cc.
References GetKey(), GetTarget(), and NoIncrementalWriteBarrierSet().
|
inlineprivate |
Definition at line 147 of file transitions-inl.h.
References v8::internal::FixedArray::NoIncrementalWriteBarrierSet(), ToKeyIndex(), and ToTargetIndex().
Referenced by NoIncrementalWriteBarrierCopyFrom().
|
inline |
Definition at line 73 of file transitions.h.
References number_of_transitions().
|
inline |
Definition at line 67 of file transitions.h.
References IsSimpleTransition(), kFirstIndex, kTransitionSize, and v8::internal::FixedArrayBase::length().
Referenced by Allocate(), v8::internal::MarkCompactCollector::ClearMapTransitions(), CopyInsert(), v8::internal::Map::DeprecateTransitionTree(), GetKey(), GetKeySlot(), GetTarget(), v8::internal::StaticMarkingVisitor< StaticVisitor >::MarkTransitionArray(), number_of_entries(), SetKey(), SetTarget(), and v8::internal::Map::UpdateFieldType().
Definition at line 137 of file transitions-inl.h.
References v8::internal::Name::Equals(), GetKey(), IsSimpleTransition(), kNotFound, kSimpleTransitionIndex, and name.
Referenced by CopyInsert(), v8::internal::Map::DeprecateTarget(), v8::internal::Map::FindLastMatchMap(), v8::internal::Map::FindTransitionToField(), and HasElementsTransition().
|
inline |
Definition at line 46 of file transitions-inl.h.
References CONDITIONAL_WRITE_BARRIER, v8::internal::HeapObject::GetHeap(), kBackPointerStorageOffset, mode(), and WRITE_FIELD.
Referenced by v8::internal::Map::SetBackPointer().
Definition at line 104 of file transitions-inl.h.
References DCHECK, IsSimpleTransition(), number_of_transitions(), v8::internal::FixedArray::set(), and ToKeyIndex().
Referenced by v8::internal::MarkCompactCollector::ClearMapTransitions().
|
inline |
Definition at line 68 of file transitions-inl.h.
References CONDITIONAL_WRITE_BARRIER, DCHECK, v8::internal::HeapObject::GetHeap(), IsFullTransitionArray(), kPrototypeTransitionsOffset, mode(), and WRITE_FIELD.
Definition at line 121 of file transitions-inl.h.
References DCHECK, IsSimpleTransition(), kSimpleTransitionIndex, kSimpleTransitionTarget, number_of_transitions(), v8::internal::FixedArray::set(), and ToTargetIndex().
Referenced by v8::internal::MarkCompactCollector::ClearMapTransitions().
v8::internal::TransitionArray::STATIC_ASSERT | ( | kSimpleTransitionIndex ! | = kNotFound | ) |
Definition at line 158 of file transitions.h.
References kFirstIndex, kTransitionKey, and kTransitionSize.
Referenced by Allocate(), CopyInsert(), ExtendToFullTransitionArray(), GetKey(), GetKeySlot(), NoIncrementalWriteBarrierSet(), and SetKey().
|
inlinestaticprivate |
Definition at line 164 of file transitions.h.
References kFirstIndex, kTransitionSize, and kTransitionTarget.
Referenced by GetTarget(), NoIncrementalWriteBarrierSet(), and SetTarget().
|
static |
Definition at line 118 of file transitions.h.
Referenced by back_pointer_storage().
|
static |
Definition at line 130 of file transitions.h.
Referenced by set_back_pointer_storage().
|
static |
Definition at line 122 of file transitions.h.
Referenced by IsFullTransitionArray(), number_of_transitions(), ToKeyIndex(), and ToTargetIndex().
|
static |
Definition at line 154 of file transitions.h.
|
static |
Definition at line 116 of file transitions.h.
Referenced by CopyInsert(), v8::internal::Map::DeprecateTarget(), v8::internal::Map::FindLastMatchMap(), v8::internal::Map::FindTransitionToField(), v8::internal::JSObject::Freeze(), v8::internal::Map::GeneralizeRepresentation(), HasElementsTransition(), v8::internal::Map::LookupTransition(), Search(), v8::internal::Map::SearchTransition(), v8::internal::JSObject::SetObserved(), v8::internal::Map::TransitionToAccessorProperty(), v8::internal::Map::TransitionToDataProperty(), and v8::internal::Map::TryUpdateInternal().
|
static |
Definition at line 121 of file transitions.h.
Referenced by Allocate(), GetPrototypeTransitions(), and HasPrototypeTransitions().
|
static |
Definition at line 133 of file transitions.h.
Referenced by GetPrototypeTransitionsSlot(), and SetPrototypeTransitions().
|
static |
Definition at line 127 of file transitions.h.
Referenced by v8::internal::Map::ExpectedTransitionKey(), v8::internal::Map::ExpectedTransitionTarget(), ExtendToFullTransitionArray(), GetKey(), GetTarget(), Search(), and SetTarget().
|
static |
Definition at line 126 of file transitions.h.
Referenced by AllocateSimple(), and IsSimpleTransition().
|
static |
Definition at line 125 of file transitions.h.
Referenced by AllocateSimple(), GetTarget(), IsSimpleTransition(), and SetTarget().
|
static |
Definition at line 137 of file transitions.h.
Referenced by ToKeyIndex().
|
static |
Definition at line 139 of file transitions.h.
Referenced by v8::internal::Map::CanHaveMoreTransitions(), v8::internal::MarkCompactCollector::ClearMapTransitions(), number_of_transitions(), ToKeyIndex(), and ToTargetIndex().
|
static |
Definition at line 138 of file transitions.h.
Referenced by ToTargetIndex().