V8 Project
|
#include <objects.h>
Public Member Functions | |
Map * | map () const |
void | set_map (Map *value) |
void | set_map_no_write_barrier (Map *value) |
Map * | synchronized_map () |
MapWord | synchronized_map_word () const |
void | synchronized_set_map (Map *value) |
void | synchronized_set_map_no_write_barrier (Map *value) |
void | synchronized_set_map_word (MapWord map_word) |
MapWord | map_word () const |
void | set_map_word (MapWord map_word) |
Heap * | GetHeap () const |
Isolate * | GetIsolate () const |
Address | address () |
void | Iterate (ObjectVisitor *v) |
void | IterateBody (InstanceType type, int object_size, ObjectVisitor *v) |
int | Size () |
bool | MayContainRawValues () |
int | SizeFromMap (Map *map) |
WriteBarrierMode | GetWriteBarrierMode (const DisallowHeapAllocation &promise) |
void | HeapObjectShortPrint (OStream &os) |
STATIC_ASSERT (kMapOffset==Internals::kHeapObjectMapOffset) | |
![]() | |
bool | IsObject () const |
INLINE (bool IsFixedArrayBase() const) | |
INLINE (bool IsExternal() const) | |
INLINE (bool IsAccessorInfo() const) | |
INLINE (bool IsStruct() const) | |
INLINE (bool IsSpecObject()) const | |
INLINE (bool IsSpecFunction()) const | |
INLINE (bool IsTemplateInfo()) const | |
INLINE (bool IsNameDictionary() const) | |
INLINE (bool IsSeededNumberDictionary() const) | |
INLINE (bool IsUnseededNumberDictionary() const) | |
INLINE (bool IsOrderedHashSet() const) | |
INLINE (bool IsOrderedHashMap() const) | |
bool | IsCallable () const |
INLINE (bool IsUndefined() const) | |
INLINE (bool IsNull() const) | |
INLINE (bool IsTheHole() const) | |
INLINE (bool IsException() const) | |
INLINE (bool IsUninitialized() const) | |
INLINE (bool IsTrue() const) | |
INLINE (bool IsFalse() const) | |
INLINE (bool IsArgumentsMarker() const) | |
INLINE (bool IsFiller() const) | |
double | Number () |
INLINE (bool IsNaN() const) | |
INLINE (bool IsMinusZero() const) | |
bool | ToInt32 (int32_t *value) |
bool | ToUint32 (uint32_t *value) |
Representation | OptimalRepresentation () |
bool | FitsRepresentation (Representation representation) |
Handle< HeapType > | OptimalType (Isolate *isolate, Representation representation) |
bool | HasValidElements () |
bool | HasSpecificClassOf (String *name) |
bool | BooleanValue () |
Object * | GetHash () |
bool | SameValue (Object *other) |
bool | SameValueZero (Object *other) |
bool | ToArrayIndex (uint32_t *index) |
bool | IsStringObjectWithCharacterAt (uint32_t index) |
void | VerifyApiCallResultType () |
void | ShortPrint (FILE *out=stdout) |
void | ShortPrint (StringStream *accumulator) |
Static Public Attributes | |
static const int | kMapOffset = Object::kHeaderSize |
static const int | kHeaderSize = kMapOffset + kPointerSize |
![]() | |
static const int | kHeaderSize = 0 |
Protected Member Functions | |
void | IteratePointers (ObjectVisitor *v, int start, int end) |
void | IteratePointer (ObjectVisitor *v, int offset) |
void | IterateNextCodeLink (ObjectVisitor *v, int offset) |
Private Member Functions | |
DISALLOW_IMPLICIT_CONSTRUCTORS (HeapObject) | |
Additional Inherited Members | |
![]() | |
enum | StoreFromKeyed { MAY_BE_STORE_FROM_KEYED , CERTAINLY_NOT_STORE_FROM_KEYED } |
enum | StorePropertyMode { NORMAL_PROPERTY , SUPER_PROPERTY } |
|
inline |
Definition at line 1470 of file objects-inl.h.
References v8::internal::kHeapObjectTag.
Referenced by v8::internal::V8HeapExplorer::AddEntry(), v8::internal::FreeList::Allocate(), v8::internal::Deserializer::Allocate(), v8::internal::Heap::AllocateCode(), v8::internal::Heap::AllocateFillerObject(), v8::internal::Heap::AllocateOneByteInternalizedString(), v8::internal::LargeObjectSpace::AllocateRaw(), v8::internal::PagedSpace::AllocateRaw(), v8::internal::Heap::AllocateTwoByteInternalizedString(), v8::internal::AllocationTracker::AllocationEvent(), v8::internal::Heap::AllowedToBeMigrated(), v8::internal::AppendCodeCreateHeader(), v8::internal::IncrementalMarking::BlackToGreyAndUnshift(), v8::internal::Code::CanDeoptAt(), v8::internal::StoreBuffer::ClearDeadObject(), v8::internal::CloneCodeObject(), v8::internal::Logger::CodeCreateEvent(), v8::internal::CpuProfiler::CodeCreateEvent(), v8::internal::CpuProfiler::CodeDisableOptEvent(), v8::internal::Code::CodeIterateBody(), v8::internal::Code::contains(), v8::internal::PagedSpace::Contains(), v8::internal::Heap::Contains(), v8::internal::FreeListCategory::ContainsPageFreeListItemsInList(), v8::internal::Heap::CopyCode(), v8::internal::Heap::CopyConstantPoolArrayWithMap(), v8::internal::CopyDoubleToDoubleElements(), v8::internal::Heap::CopyFixedArrayWithMap(), v8::internal::Heap::CopyFixedDoubleArrayWithMap(), v8::internal::Heap::CopyJSObject(), v8::internal::CopyObjectToObjectElements(), v8::internal::MarkCompactCollector::DiscoverAndEvacuateBlackObjectsOnPage(), v8::internal::DiscoverGreyObjectsOnPage(), v8::internal::Heap::DoScavenge(), v8::internal::EnsureDoubleAligned(), v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::EvacuateJSFunction(), v8::internal::MarkCompactCollector::EvacuateNewSpaceAndCandidates(), v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::EvacuateObject(), v8::internal::Heap::FindAllocationMemento(), v8::internal::FreeList::FindNodeFor(), v8::internal::LargeObjectSpace::FreeUnmarkedObjects(), v8::internal::FreeListNode::FromAddress(), FromAddress(), v8::internal::ByteArray::FromDataStartAddress(), v8::internal::Code::GetCodeFromTargetAddress(), v8::internal::SerializationAddressMapper::Hash(), v8::internal::IncrementalMarking::Hurry(), v8::internal::IncrementalMarkingMarkingVisitor::INLINE(), v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::INLINE(), v8::internal::MarkingDeque::INLINE(), v8::internal::Heap::InSpace(), v8::internal::StoreBuffer::IteratePointersToNewSpace(), v8::internal::JSFunction::JSFunctionIterateBody(), v8::internal::SerializationAddressMapper::Key(), v8::internal::Heap::LeftTrimFixedArray(), v8::internal::CpuProfiler::LogBuiltins(), v8::internal::CodeAddressMap::LogRecordedBuffer(), v8::internal::PerfBasicLogger::LogRecordedBuffer(), v8::internal::LowLevelLogger::LogRecordedBuffer(), v8::internal::String::MakeExternal(), v8::internal::MarkBlackOrKeepBlack(), v8::internal::MarkBlackOrKeepGrey(), v8::internal::MarkCompactCollector::MarkLiveObjects(), v8::internal::MarkObjectGreyDoNotEnqueue(), v8::internal::IndexedReferencesExtractor::MarkVisitedField(), v8::internal::MarkCompactCollector::MigrateObject(), v8::internal::Heap::MoveElements(), v8::internal::FreeListNode::next(), v8::internal::BASE_EMBEDDED< Visitor >::next(), v8::internal::FreeListNode::next_address(), v8::internal::FixedArray::NoIncrementalWriteBarrierSet(), v8::internal::Heap::OnAllocationEvent(), v8::internal::Heap::OnMoveEvent(), v8::internal::Serializer::ObjectSerializer::OutputRawData(), v8::internal::FreeListCategory::PickNodeFromList(), v8::internal::anonymous_namespace{heap-snapshot-generator.cc}::HeapObjectInfo::Print(), v8::internal::CodeFlusher::ProcessJSFunctionCandidates(), v8::internal::MarkCompactCollector::ProcessWeakCollections(), v8::internal::IncrementalMarking::RecordWriteFromCode(), v8::internal::IncrementalMarking::RecordWrites(), v8::internal::CpuProfiler::RegExpCodeCreateEvent(), v8::internal::FreeListCategory::RepairFreeList(), v8::internal::MarkCompactCollector::ReportDeleteIfNeeded(), v8::internal::Heap::ReserveSpace(), v8::internal::Heap::RightTrimFixedArray(), v8::internal::Serializer::ObjectSerializer::Serialize(), v8::internal::FreeListNode::set_next(), v8::internal::SetMarkBitsUnderInvalidatedCode(), v8::internal::JavaScriptFrame::Summarize(), v8::internal::IncrementalMarking::UpdateMarkingDequeAfterScavenge(), v8::internal::UpdatePointer(), v8::internal::IncrementalMarkingMarkingVisitor::VisitFixedArrayIncremental(), and v8::internal::StaticMarkingVisitor< StaticVisitor >::VisitJSFunctionStrongCode().
|
private |
|
inlinestatic |
Definition at line 1464 of file objects-inl.h.
References address(), DCHECK_TAG_ALIGNED, and v8::internal::kHeapObjectTag.
Referenced by v8::internal::PagedSpace::AllocateLinearly(), v8::internal::AllocationTracker::AllocationEvent(), v8::internal::CloneCodeObject(), v8::internal::JitLogger::CodeDeleteEvent(), v8::internal::JitLogger::CodeMoveEvent(), v8::internal::Heap::CreateFillerObjectAt(), v8::internal::MarkCompactCollector::DiscoverAndEvacuateBlackObjectsOnPage(), v8::internal::DiscoverGreyObjectsOnPage(), v8::internal::Heap::DoScavenge(), v8::internal::EnsureDoubleAligned(), v8::internal::MarkCompactCollector::EvacuateLiveObjectsFromPage(), v8::internal::Heap::FindAllocationMemento(), v8::internal::FreeListNode::FromAddress(), v8::internal::HeapObjectIterator::FromCurrentPage(), v8::internal::InnerPointerToCodeCache::GcSafeFindCodeForInnerPointer(), v8::internal::Deserializer::GetAddressFromEnd(), v8::internal::Code::GetCodeFromTargetAddress(), v8::internal::LargePage::GetObject(), v8::internal::Code::GetObjectFromEntryAddress(), v8::internal::Heap::IterateAndMarkPointersToFromSpace(), v8::internal::Heap::LeftTrimFixedArray(), v8::internal::SemiSpaceIterator::Next(), v8::internal::Deserializer::ReadObject(), v8::internal::ProfileGenerator::RecordTickSample(), v8::internal::Sweep(), v8::internal::Marking::TransferMark(), v8::internal::UpdatePointer(), and v8::internal::UpdateSlot().
|
inline |
Definition at line 1379 of file objects-inl.h.
References v8::internal::MemoryChunk::FromAddress(), v8::internal::MemoryChunk::heap(), NULL, and SLOW_DCHECK.
Referenced by v8::internal::RecordWriteStub::Activate(), v8::internal::Context::AddOptimizedFunction(), v8::internal::JSFunctionResultCache::Clear(), v8::internal::SharedFunctionInfo::ClearOptimizedCodeMap(), v8::internal::SharedFunctionInfo::ClearTypeFeedbackInfo(), v8::internal::String::ComputeAndSetHash(), v8::internal::FixedArray::ContainsOnlySmisOrHoles(), v8::internal::CopyDictionaryToObjectElements(), v8::internal::CopyDoubleToObjectElements(), v8::internal::Map::CopyDropDescriptors(), v8::internal::CopyObjectToDoubleElements(), v8::internal::CopyObjectToObjectElements(), v8::internal::CopySmiToDoubleElements(), v8::internal::Deoptimizer::DeoptimizeGlobalObject(), v8::internal::Deoptimizer::DeoptimizeMarkedCodeForContext(), v8::internal::Map::DeprecateTarget(), v8::internal::Map::elements_transition_map(), v8::internal::Map::EnsureDescriptorSlack(), v8::internal::SharedFunctionInfo::EvictFromOptimizedCodeMap(), v8::internal::JSObject::FastPropertyAtPut(), v8::internal::Code::FindFirstAllocationSite(), v8::internal::Code::FindFirstMap(), v8::internal::Map::FindInCodeCache(), v8::internal::ConstantPoolArray::get_code_ptr_entry(), v8::internal::ConstantPoolArray::get_heap_ptr_entry(), v8::internal::ConstantPoolArray::get_int32_entry(), v8::internal::ConstantPoolArray::get_int64_entry(), v8::internal::ConstantPoolArray::get_int64_entry_as_double(), v8::internal::FixedDoubleArray::get_representation(), v8::internal::FixedDoubleArray::get_scalar(), v8::internal::TraversableMap::GetAndResetParent(), v8::internal::DebugInfo::GetBreakPointInfo(), v8::internal::DebugInfo::GetBreakPointObjects(), v8::internal::AccessorPair::GetComponent(), v8::internal::JSObject::GetElementsKind(), v8::internal::JSObject::GetHiddenPropertiesHashTable(), v8::internal::JSObject::GetHiddenProperty(), v8::internal::Map::GetInitialElements(), GetIsolate(), v8::internal::Map::GetPrototypeTransitions(), GetWriteBarrierMode(), v8::internal::JSObject::HasDictionaryArgumentsElements(), v8::internal::TransitionArray::HasElementsTransition(), v8::internal::JSObject::HasFastArgumentsElements(), v8::internal::OrderedHashTableIterator< Derived, TableType >::HasMore(), HeapObjectShortPrint(), v8::internal::AllocationSite::Initialize(), v8::internal::Struct::InitializeBody(), v8::internal::JSObject::InitializeBody(), v8::internal::MarkCompactMarkingVisitor::INLINE(), v8::internal::JSObject::InObjectPropertyAtPut(), v8::internal::Code::InvalidateEmbeddedObjects(), v8::internal::Code::InvalidateRelocation(), v8::internal::FixedArray::is_the_hole(), v8::internal::Context::IsBlockContext(), v8::internal::Context::IsCatchContext(), v8::internal::DescriptorArray::IsEmpty(), v8::internal::Context::IsFunctionContext(), v8::internal::Context::IsGlobalContext(), v8::internal::Context::IsModuleContext(), v8::internal::Context::IsNativeContext(), v8::internal::AllocationSite::IsNestedSite(), v8::internal::Context::IsWithContext(), v8::internal::JSObject::JSObjectShortPrint(), v8::internal::MapCache::Lookup(), v8::internal::ObjectHashTable::Lookup(), v8::internal::OrderedHashMap::Lookup(), v8::internal::WeakHashTable::Lookup(), v8::internal::PolymorphicCodeCacheHashTable::Lookup(), v8::internal::CodeCache::Lookup(), v8::internal::CodeCacheHashTable::Lookup(), v8::internal::CodeCache::LookupDefaultCache(), v8::internal::CodeCache::LookupNormalTypeCache(), v8::internal::String::MakeExternal(), v8::internal::String::MarkAsUndetectable(), v8::internal::JSTypedArray::Neuter(), v8::internal::FreeListNode::next(), v8::internal::FreeListNode::next_address(), v8::internal::FixedArray::NoIncrementalWriteBarrierSet(), v8::internal::FixedArray::NoWriteBarrierSet(), v8::internal::MarkCompactMarkingVisitor::ObjectStatsCountFixedArray(), v8::internal::JSObject::ReferencesObject(), v8::internal::CompilationCacheTable::Remove(), v8::internal::CodeCacheHashTable::RemoveByIndex(), v8::internal::Context::RemoveOptimizedFunction(), v8::internal::JSFunction::RemovePrototype(), v8::internal::SharedFunctionInfo::ReplaceCode(), v8::internal::MarkCompactWeakObjectRetainer::RetainAs(), v8::internal::Heap::ScavengeObject(), v8::internal::PartialSerializer::SerializeObject(), v8::internal::FixedDoubleArray::set(), v8::internal::ConstantPoolArray::set(), v8::internal::FixedArray::set(), v8::internal::ConstantPoolArray::set_at_offset(), v8::internal::TransitionArray::set_back_pointer_storage(), v8::internal::JSFunction::set_code(), v8::internal::JSFunction::set_code_no_write_barrier(), v8::internal::Code::set_constant_pool(), v8::internal::JSFunction::set_context(), v8::internal::ConsString::set_first(), v8::internal::JSFunction::set_function_bindings(), v8::internal::JSBuiltinsObject::set_javascript_builtin(), v8::internal::JSBuiltinsObject::set_javascript_builtin_code(), set_map(), v8::internal::AllocationSite::set_memento_found_count(), v8::internal::FreeListNode::set_next(), v8::internal::FixedArray::set_null(), v8::internal::SlicedString::set_parent(), v8::internal::ConsString::set_second(), v8::internal::FixedArray::set_the_hole(), v8::internal::FixedDoubleArray::set_the_hole(), v8::internal::Code::set_type_feedback_info(), v8::internal::FixedArray::set_undefined(), v8::internal::Map::SetBackPointer(), v8::internal::JSObject::SetInternalField(), v8::internal::DependentCode::SetMarkedForDeoptimization(), v8::internal::TransitionArray::SetPrototypeTransitions(), v8::internal::JSObject::ShouldConvertToFastElements(), v8::internal::JSObject::ShouldConvertToSlowElements(), v8::internal::FixedArray::Shrink(), v8::internal::JSObject::SlowReverseLookup(), v8::internal::Dictionary< Derived, Shape, Key >::SlowReverseLookup(), v8::internal::Serializer::SpaceOfObject(), synchronized_set_map(), v8::internal::String::ToCString(), v8::internal::String::ToWideCString(), v8::internal::SharedFunctionInfo::TrimOptimizedCodeMap(), v8::internal::Deoptimizer::VisitAllOptimizedFunctionsForContext(), v8::internal::Map::ZapPrototypeTransitions(), and v8::internal::Map::ZapTransitions().
|
inline |
Definition at line 1387 of file objects-inl.h.
References GetHeap(), and v8::internal::Heap::isolate().
Referenced by v8::internal::AddToWeakNativeContextList(), v8::internal::ExecutableAccessorInfo::clear_setter(), v8::internal::Code::ClearInlineCaches(), v8::internal::Code::CodeIterateBody(), v8::internal::CopyDoubleToObjectElements(), v8::internal::Map::CopyForFreeze(), v8::internal::Map::CopyForObserved(), v8::internal::DescriptorArray::CopyFrom(), v8::internal::Map::CopyGeneralizeAllRepresentations(), v8::internal::TransitionArray::CopyInsert(), v8::internal::CopyObjectToObjectElements(), v8::HandleScope::CreateHandle(), v8::internal::DebugReferencedBy(), v8::internal::DeoptimizeDependentFunctions(), v8::internal::Deoptimizer::DeoptimizeGlobalObject(), v8::internal::Map::DeprecateTransitionTree(), v8::internal::SharedFunctionInfo::DisableOptimization(), v8::internal::JSDate::DoGetField(), v8::internal::Context::ErrorMessageForCodeGenerationFromStrings(), v8::internal::HashTable< Derived, Shape, Key >::FindEntry(), v8::internal::Map::GeneralizeAllFieldRepresentations(), v8::internal::Map::GeneralizeFieldType(), v8::internal::DescriptorArray::Get(), v8::internal::JSTypedArray::GetBuffer(), v8::internal::Code::GetCodeAgeAndParity(), v8::internal::JSObject::GetHiddenPropertiesHashTable(), v8::internal::JSObject::GetHiddenProperty(), v8::internal::JSObject::GetIdentityHash(), v8::internal::Code::GetRawAge(), v8::internal::SharedFunctionInfo::GetSourceCode(), v8::internal::JSDate::GetUTCField(), v8::internal::Context::global_object(), v8::internal::Map::has_code_cache(), v8::internal::PromotionQueue::insert(), v8::internal::IC::InvalidateMaps(), v8::internal::SharedFunctionInfo::is_compiled(), v8::internal::JSFunction::is_compiled(), v8::internal::JSGlobalProxy::IsDetachedFrom(), v8::internal::IsInlined(), v8::internal::JSFunction::IsInOptimizationQueue(), v8::internal::Map::IsMapInArrayPrototypeChain(), v8::internal::JSFunction::IsMarkedForConcurrentOptimization(), v8::internal::JSFunction::IsMarkedForOptimization(), v8::internal::JSReceiver::IsSimpleEnum(), v8::internal::String::LooksValid(), v8::internal::Context::Lookup(), v8::internal::CompilationCacheTable::Lookup(), v8::internal::PolymorphicCodeCache::Lookup(), v8::internal::CompilationCacheTable::LookupEval(), v8::internal::CompilationCacheTable::LookupRegExp(), v8::internal::Code::MakeOlder(), v8::internal::JSFunction::MarkForConcurrentOptimization(), v8::internal::JSFunction::MarkForOptimization(), v8::internal::JSFunction::MarkInOptimizationQueue(), v8::internal::ModuleGetExport(), v8::internal::ModuleSetExport(), v8::internal::Context::native_context(), v8::internal::Map::NotifyLeafMapLayoutChange(), v8::internal::OwnPrototypeChainLength(), v8::internal::Map::PrepareForDataProperty(), v8::internal::Code::PrintDeoptLocation(), v8::internal::Map::PrintGeneralization(), v8::internal::Map::RawCopy(), v8::internal::RelocIterator::RelocIterator(), v8::internal::Heap::ScavengeObject(), v8::internal::Heap::ScavengeObjectSlow(), v8::internal::Code::set_marked_for_deoptimization(), v8::internal::SetAtomLastCapture(), v8::internal::JSFunction::SetInstancePrototype(), v8::internal::JSDate::SetValue(), v8::internal::Map::ShareDescriptor(), v8::internal::String::SlowEquals(), v8::internal::JSFunction::StartInobjectSlackTracking(), v8::internal::Map::TransitionElementsTo(), v8::internal::AllocationTracker::UnresolvedLocation::UnresolvedLocation(), v8::internal::Map::Update(), v8::internal::Map::UpdateCodeCache(), and v8::internal::VerifyPointersVisitor::VisitPointers().
|
inline |
Definition at line 2660 of file objects-inl.h.
References GetHeap(), v8::internal::Heap::incremental_marking(), v8::internal::Heap::InNewSpace(), v8::internal::SKIP_WRITE_BARRIER, and v8::internal::UPDATE_WRITE_BARRIER.
Referenced by v8::internal::Heap::CopyAndTenureFixedCOWArray(), v8::internal::CopyCachedOneByteCharsToArray(), v8::internal::Heap::CopyFixedArrayWithMap(), v8::internal::FixedArray::CopyTo(), v8::internal::Dictionary< Derived, Shape, Key >::CopyValuesTo(), v8::internal::JSObject::PrepareElementsForSort(), v8::internal::HashTable< Derived, Shape, Key >::Rehash(), and v8::internal::Dictionary< Derived, Shape, Key >::SetEntry().
void v8::internal::HeapObject::HeapObjectShortPrint | ( | OStream & | os | ) |
Definition at line 1374 of file objects.cc.
References v8::internal::BYTE_ARRAY_TYPE, v8::internal::CODE_TYPE, v8::internal::Heap::Contains(), v8::internal::SharedFunctionInfo::DebugName(), v8::internal::FIXED_ARRAY_TYPE, v8::internal::FIXED_DOUBLE_ARRAY_TYPE, v8::internal::FREE_SPACE_TYPE, v8::internal::SmartPointerBase< Deallocator, T >::get(), GetHeap(), v8::internal::Name::Hash(), v8::internal::HEAP_NUMBER_TYPE, v8::internal::JS_MESSAGE_OBJECT_TYPE, v8::internal::Code::kind(), v8::internal::Code::Kind2String(), MAKE_STRUCT_CASE, map(), v8::internal::MAP_TYPE, v8::internal::MUTABLE_HEAP_NUMBER_TYPE, v8::internal::ODDBALL_TYPE, v8::internal::SHARED_FUNCTION_INFO_TYPE, STRUCT_LIST, v8::internal::SYMBOL_TYPE, v8::internal::String::ToCString(), TYPED_ARRAY_SHORT_PRINT, and TYPED_ARRAYS.
Referenced by v8::internal::operator<<().
void v8::internal::HeapObject::Iterate | ( | ObjectVisitor * | v | ) |
Definition at line 1529 of file objects.cc.
Referenced by v8::internal::MarkCompactCollector::EvacuateNewSpaceAndCandidates(), v8::internal::MarkCompactCollector::ProcessInvalidatedCode(), and v8::internal::UnreachableObjectsFilter::MarkingVisitor::TransitiveClosure().
void v8::internal::HeapObject::IterateBody | ( | InstanceType | type, |
int | object_size, | ||
ObjectVisitor * | v | ||
) |
Definition at line 1538 of file objects.cc.
Referenced by v8::internal::Serializer::ObjectSerializer::Serialize(), and v8::internal::Sweep().
|
inlineprotected |
Definition at line 1510 of file objects-inl.h.
References FIELD_ADDR.
Referenced by v8::internal::Code::CodeIterateBody().
|
inlineprotected |
Definition at line 1505 of file objects-inl.h.
References FIELD_ADDR.
Referenced by v8::internal::Code::CodeIterateBody().
|
inlineprotected |
Definition at line 1499 of file objects-inl.h.
References FIELD_ADDR.
Referenced by v8::internal::HashTable< Derived, Shape, Key >::IterateElements(), v8::internal::HashTable< Derived, Shape, Key >::IteratePrefix(), and v8::internal::JSFunction::JSFunctionIterateBody().
|
inline |
Definition at line 1392 of file objects-inl.h.
References map_word().
Referenced by v8::internal::Map::AddDependentCode(), v8::internal::Map::AddDependentCompilationInfo(), v8::internal::Map::AddDependentIC(), v8::internal::JSObject::AllocateStorageForMap(), v8::internal::Heap::AllowedToBeMigrated(), v8::internal::Map::AppendCallbackDescriptors(), v8::internal::Map::AsElementsKind(), v8::internal::InternalizedStringKey::AsHandle(), v8::internal::JSFunction::CloneClosure(), v8::internal::CompareNilIC::CompareNil(), v8::internal::JSFunction::CompleteInobjectSlackTracking(), v8::internal::ComputeReceiverForNonGlobal(), v8::internal::ContainsMap(), v8::internal::Map::Copy(), v8::internal::Map::CopyAddDescriptor(), v8::internal::Map::CopyAsElementsKind(), v8::internal::Heap::CopyConstantPoolArray(), v8::internal::Map::CopyDropDescriptors(), v8::internal::Heap::CopyFixedArray(), v8::internal::Heap::CopyFixedDoubleArray(), v8::internal::Map::CopyForFreeze(), v8::internal::Map::CopyForObserved(), v8::internal::Map::CopyGeneralizeAllRepresentations(), v8::internal::TransitionArray::CopyInsert(), v8::internal::Map::CopyInsertDescriptor(), v8::internal::Map::CopyInstallDescriptors(), v8::internal::Heap::CopyJSObject(), v8::internal::Map::CopyNormalized(), v8::internal::CopyObjectToObjectElements(), v8::internal::Map::CopyReplaceDescriptor(), v8::internal::Map::CopyReplaceDescriptors(), v8::internal::FixedTypedArrayBase::DataSize(), v8::internal::DebugConstructedBy(), v8::internal::DebugReferencedBy(), v8::internal::Heap::DoScavenge(), v8::internal::JSTypedArray::element_size(), v8::internal::ElementsKindForArray(), v8::internal::Map::EnsureDescriptorSlack(), v8::internal::JSFunction::EnsureHasInitialMap(), v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::EvacuateShortcutCandidate(), v8::internal::Map::ExpectedTransitionKey(), v8::internal::Map::ExpectedTransitionTarget(), v8::internal::V8HeapExplorer::ExtractPropertyReferences(), v8::internal::Heap::FindAllocationMemento(), v8::internal::Code::FindAndReplace(), v8::internal::FindClosestElementsTransition(), v8::internal::Code::FindHandlerForMap(), v8::internal::Code::FindNthObject(), v8::internal::Map::FindTransitionToField(), v8::internal::Heap::GcSafeSizeOfOldObject(), v8::internal::Map::GeneralizeAllFieldRepresentations(), v8::internal::Map::GeneralizeFieldType(), v8::internal::ConstantPoolArray::get_code_ptr_entry(), v8::internal::ConstantPoolArray::get_heap_ptr_entry(), v8::internal::ConstantPoolArray::get_int32_entry(), v8::internal::ConstantPoolArray::get_int64_entry(), v8::internal::ConstantPoolArray::get_int64_entry_as_double(), v8::internal::FixedDoubleArray::get_representation(), v8::internal::FixedDoubleArray::get_scalar(), v8::internal::TraversableMap::GetAndResetParent(), v8::internal::JSTypedArray::GetBuffer(), v8::internal::JSReceiver::GetConstructor(), v8::internal::JSObject::GetElementsKind(), v8::internal::JSObject::GetElementsTransitionMap(), v8::internal::GetEnumPropertyKeys(), v8::internal::JSObject::GetHeaderSize(), v8::internal::JSObject::GetHiddenPropertiesHashTable(), v8::internal::NormalizedMapCache::GetIndex(), v8::internal::JSObject::GetIndexedInterceptor(), v8::internal::JSObject::GetInObjectPropertyOffset(), v8::internal::JSObject::GetInternalFieldCount(), v8::internal::JSObject::GetNamedInterceptor(), v8::internal::JSObject::GetOwnPropertyNames(), v8::internal::Map::GetPrototypeTransition(), v8::internal::Object::GetRootMap(), v8::internal::V8HeapExplorer::GetSystemEntryName(), v8::internal::TransitionArray::GetTargetDetails(), v8::internal::HandleApiCallAsFunctionOrConstructor(), v8::internal::JSFunction::has_prototype(), v8::internal::JSObject::HasDictionaryArgumentsElements(), v8::internal::JSObject::HasFastArgumentsElements(), v8::internal::JSObject::HasFastProperties(), v8::internal::JSObject::HasIndexedInterceptor(), v8::internal::JSObject::HasNamedInterceptor(), v8::internal::String::HasOnlyOneByteChars(), HeapObjectShortPrint(), v8::internal::JSObject::initialize_elements(), v8::internal::Heap::InitializeAllocationMemento(), v8::internal::JSObject::InitializeBody(), v8::internal::MarkCompactMarkingVisitor::INLINE(), v8::internal::Context::IsBlockContext(), v8::internal::Context::IsCatchContext(), v8::internal::AccessorInfo::IsCompatibleReceiver(), v8::internal::AccessorInfo::IsCompatibleReceiverType(), v8::internal::JSObject::IsDirty(), v8::internal::FreeListNode::IsFreeListNode(), v8::internal::Context::IsFunctionContext(), v8::internal::Context::IsGlobalContext(), v8::internal::Context::IsModuleContext(), v8::internal::Context::IsNativeContext(), v8::internal::String::IsOneByteRepresentation(), v8::internal::String::IsOneByteRepresentationUnderneath(), v8::internal::JSReceiver::IsSimpleEnum(), v8::internal::FunctionTemplateInfo::IsTemplateFor(), v8::internal::String::IsTwoByteRepresentation(), v8::internal::String::IsTwoByteRepresentationUnderneath(), v8::internal::Context::IsWithContext(), v8::internal::JSObject::JSObjectShortPrint(), v8::internal::Heap::LeftTrimFixedArray(), v8::internal::String::MarkAsUndetectable(), v8::internal::MarkCompactCollector::MarkLiveObjects(), v8::internal::JSTypedArray::MaterializeArrayBuffer(), MayContainRawValues(), v8::internal::JSObject::MigrateFastToSlow(), v8::internal::JSObject::MigrateInstance(), v8::internal::JSObject::MigrateToNewProperty(), v8::internal::Heap::MoveElements(), v8::internal::JSTypedArray::Neuter(), v8::internal::HashTable< MapCache, MapCacheShape, HashTableKey * >::New(), v8::internal::TransitionArray::NewWith(), v8::internal::FreeListNode::next(), v8::internal::FreeListNode::next_address(), v8::internal::ConsStringIteratorOp::NextLeaf(), v8::internal::FixedArray::NoIncrementalWriteBarrierSet(), v8::internal::JSObject::NormalizeProperties(), v8::internal::FixedArray::NoWriteBarrierSet(), v8::internal::JSObject::NumberOfOwnProperties(), v8::internal::MarkCompactMarkingVisitor::ObjectStatsCountFixedArray(), v8::internal::Map::PrepareForDataProperty(), v8::internal::JSObject::PrintInstanceMigration(), v8::internal::JSFunction::prototype(), v8::internal::Map::PutPrototypeTransition(), v8::internal::Map::RawCopy(), v8::internal::Map::ReconfigureDataProperty(), v8::internal::NewSpace::RecordAllocation(), v8::internal::NewSpace::RecordPromotion(), v8::internal::JSObject::ReferencesObject(), v8::internal::HashTable< MapCache, MapCacheShape, HashTableKey * >::Rehash(), v8::internal::RelocIterator::RelocIterator(), v8::internal::JSFunction::RemovePrototype(), v8::internal::Heap::RightTrimFixedArray(), v8::internal::RUNTIME_FUNCTION(), v8::internal::Heap::ScavengeObject(), v8::internal::ConsStringIteratorOp::Search(), v8::internal::Serializer::ObjectSerializer::Serialize(), v8::internal::FixedDoubleArray::set(), v8::internal::ConstantPoolArray::set(), v8::internal::FixedArray::set(), v8::internal::ConstantPoolArray::set_at_offset(), v8::internal::JSFunction::set_function_bindings(), v8::internal::FreeListNode::set_next(), v8::internal::FixedArray::set_the_hole(), v8::internal::FixedDoubleArray::set_the_hole(), v8::internal::FixedArray::set_undefined(), v8::internal::JSFunction::SetInitialMap(), v8::internal::JSObject::SetPrototype(), v8::internal::Map::SetPrototypeTransitions(), v8::internal::Map::ShareDescriptor(), v8::internal::JSFunction::should_have_prototype(), v8::internal::PartialSerializer::ShouldBeInThePartialSnapshotCache(), v8::internal::JSObject::ShouldConvertToFastElements(), v8::internal::HashTable< MapCache, MapCacheShape, HashTableKey * >::Shrink(), Size(), SizeFromMap(), v8::internal::JSObject::BodyDescriptor::SizeOf(), v8::internal::JSObject::SlowReverseLookup(), v8::internal::JSFunction::StartInobjectSlackTracking(), v8::internal::Sweep(), v8::internal::Map::TransitionElementsTo(), v8::internal::Map::TransitionElementsToSlow(), v8::internal::Map::TransitionToAccessorProperty(), v8::internal::Map::TransitionToDataProperty(), v8::internal::Map::TransitionToPrototype(), v8::internal::Map::TryUpdate(), v8::internal::JSTypedArray::type(), v8::internal::Map::Update(), v8::internal::Heap::UpdateAllocationSiteFeedback(), v8::internal::Map::UpdateCodeCache(), UpdateMapCodeCache(), v8::internal::IncrementalMarking::UpdateMarkingDequeAfterScavenge(), v8::internal::GlobalObjectsEnumerator::VisitPointers(), v8::internal::VerifyPointersVisitor::VisitPointers(), and v8::internal::JSObject::WriteToField().
|
inline |
Definition at line 1440 of file objects-inl.h.
References kMapOffset, and NOBARRIER_READ_FIELD.
Referenced by v8::internal::MarkCompactCollector::EvacuateLiveObjectsFromPage(), v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::EvacuateShortcutCandidate(), v8::internal::GcSafeMapOfCodeSpaceObject(), v8::internal::IntrusiveMarking::IsMarked(), map(), v8::internal::EvacuationWeakObjectRetainer::RetainAs(), set_map_word(), synchronized_set_map_word(), v8::internal::IncrementalMarking::UpdateMarkingDequeAfterScavenge(), v8::internal::Heap::UpdateNewSpaceReferenceInExternalStringTableEntry(), v8::internal::UpdateReferenceInExternalStringTableEntry(), and v8::internal::PointersUpdatingVisitor::UpdateSlot().
|
inline |
Definition at line 1480 of file objects-inl.h.
References v8::internal::CONSTANT_POOL_ARRAY_TYPE, DCHECK, v8::internal::FIRST_NONSTRING_TYPE, v8::internal::Map::instance_type(), v8::internal::kIsIndirectStringMask, v8::internal::kIsIndirectStringTag, v8::internal::LAST_DATA_TYPE, v8::internal::LAST_NAME_TYPE, map(), and v8::internal::SYMBOL_TYPE.
Referenced by v8::internal::MarkCompactCollector::MigrateObject().
|
inlinestatic |
Definition at line 1311 of file objects-inl.h.
References FIELD_ADDR.
Referenced by v8::internal::MarkCompactCollector::ClearNonLiveReferences(), v8::internal::ConstantPoolArray::ClearPtrEntries(), v8::internal::FixedArray::data_start(), v8::internal::WeakListVisitor< Context >::DoWeakList(), v8::internal::DescriptorArray::GetEnumCacheSlot(), v8::internal::CodeFlusher::GetNextCandidateSlot(), v8::internal::TransitionArray::GetPrototypeTransitionsSlot(), v8::internal::StaticNewSpaceVisitor< StaticVisitor >::INLINE(), v8::internal::FlexibleBodyDescriptor< start_offset >::IterateBody(), v8::internal::FixedBodyDescriptor< start_offset, end_offset, size >::IterateBody(), v8::internal::IntrusiveMapTransitionIterator::IteratorField(), v8::internal::IntrusivePrototypeTransitionIterator::IteratorField(), v8::internal::Heap::LeftTrimFixedArray(), v8::internal::StaticMarkingVisitor< IncrementalMarkingMarkingVisitor >::MarkInlinedFunctionsCode(), v8::internal::StaticMarkingVisitor< StaticVisitor >::MarkMapContents(), v8::internal::CodeFlusher::ProcessJSFunctionCandidates(), v8::internal::CodeFlusher::ProcessSharedFunctionInfoCandidates(), v8::internal::FixedArray::RawFieldOfElementAt(), v8::internal::ConstantPoolArray::RawFieldOfElementAt(), v8::internal::IncrementalMarking::RecordWriteSlow(), v8::internal::RUNTIME_FUNCTION(), v8::internal::JSFunction::set_code(), v8::internal::IncrementalMarkingMarkingVisitor::VisitFixedArrayIncremental(), v8::internal::StaticMarkingVisitor< StaticVisitor >::VisitJSFunctionStrongCode(), v8::internal::StaticMarkingVisitor< StaticVisitor >::VisitJSFunctionWeakCode(), v8::internal::WeakListVisitor< JSArrayBuffer >::VisitLiveObject(), v8::internal::StaticMarkingVisitor< StaticVisitor >::VisitSharedFunctionInfoStrongCode(), v8::internal::StaticMarkingVisitor< StaticVisitor >::VisitSharedFunctionInfoWeakCode(), and v8::internal::VisitWeakList().
|
inline |
Definition at line 1404 of file objects-inl.h.
References GetHeap(), v8::internal::Heap::incremental_marking(), NULL, and set_map_word().
Referenced by v8::internal::Heap::AllocateTwoByteInternalizedString(), v8::internal::Heap::CreateInitialMaps(), v8::internal::String::MarkAsUndetectable(), and v8::internal::JSFunction::RemovePrototype().
|
inline |
Definition at line 1435 of file objects-inl.h.
References set_map_word().
Referenced by v8::internal::Heap::Allocate(), v8::internal::Heap::AllocateByteArray(), v8::internal::Heap::AllocateCell(), v8::internal::Heap::AllocateCode(), v8::internal::Heap::AllocateEmptyConstantPoolArray(), v8::internal::Heap::AllocateEmptyFixedArray(), v8::internal::Heap::AllocateExternalArray(), v8::internal::Heap::AllocateFixedArrayWithFiller(), v8::internal::Heap::AllocateInternalizedStringImpl(), v8::internal::Heap::AllocateMap(), v8::internal::Heap::AllocateOneByteInternalizedString(), v8::internal::Heap::AllocatePropertyCell(), v8::internal::Heap::AllocateRawOneByteString(), v8::internal::Heap::AllocateRawTwoByteString(), v8::internal::Heap::AllocateSymbol(), v8::internal::Heap::AllocateUninitializedFixedArray(), v8::internal::Heap::AllocateUninitializedFixedDoubleArray(), v8::internal::InternalizedStringKey::AsHandle(), v8::internal::Heap::CopyAndTenureFixedCOWArray(), v8::internal::Heap::CopyConstantPoolArrayWithMap(), v8::internal::Heap::CopyFixedArrayWithMap(), v8::internal::Heap::CopyFixedDoubleArrayWithMap(), v8::internal::Heap::CreateFillerObjectAt(), v8::internal::TraversableMap::GetAndResetParent(), v8::internal::Heap::InitializeAllocationMemento(), v8::internal::FreeListNode::set_size(), and v8::internal::TraversableMap::SetParent().
|
inline |
Definition at line 1446 of file objects-inl.h.
References kMapOffset, map_word(), and NOBARRIER_WRITE_FIELD.
Referenced by v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::EvacuateShortcutCandidate(), v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::INLINE(), set_map(), and set_map_no_write_barrier().
|
inline |
Definition at line 1475 of file objects-inl.h.
References map(), and SizeFromMap().
Referenced by v8::internal::V8HeapExplorer::AddEntry(), v8::internal::Heap::AllocateInternalizedStringImpl(), v8::internal::Heap::AllocateOneByteInternalizedString(), v8::internal::Heap::AllocateTwoByteInternalizedString(), v8::internal::AllocationTracker::AllocationEvent(), v8::internal::IncrementalMarking::BlackToGreyAndUnshift(), v8::internal::CloneCodeObject(), v8::internal::Code::contains(), v8::internal::Heap::CopyCode(), v8::internal::DiscoverGreyObjectsOnPage(), v8::internal::ScavengingVisitor< marks_handling, logging_and_profiling_mode >::EvacuateObject(), v8::internal::HeapObjectIterator::FromCurrentPage(), v8::internal::JSObject::GetInternalFieldCount(), v8::internal::IncrementalMarking::Hurry(), v8::internal::IncrementalMarkingMarkingVisitor::INLINE(), v8::internal::MarkingDeque::INLINE(), v8::internal::anonymous_namespace{heap-snapshot-generator.cc}::HeapObjectInfo::IsValid(), v8::internal::StoreBuffer::IteratePointersToNewSpace(), v8::internal::Heap::LeftTrimFixedArray(), v8::internal::String::MakeExternal(), v8::internal::IncrementalMarkingRootMarkingVisitor::MarkObjectByPointer(), v8::internal::MarkObjectGreyDoNotEnqueue(), v8::internal::FreeListNode::next(), v8::internal::SemiSpaceIterator::Next(), v8::internal::FreeListNode::next_address(), v8::internal::MarkCompactMarkingVisitor::ObjectStatsCountFixedArray(), v8::internal::MarkCompactMarkingVisitor::ObjectStatsVisitBase(), v8::internal::anonymous_namespace{heap-snapshot-generator.cc}::HeapObjectInfo::Print(), v8::internal::NewSpace::RecordAllocation(), v8::internal::NewSpace::RecordPromotion(), v8::internal::Heap::RightTrimFixedArray(), v8::internal::Serializer::ObjectSerializer::Serialize(), v8::internal::FreeListNode::set_next(), v8::internal::SetMarkBitsUnderInvalidatedCode(), v8::internal::MarkCompactMarkingVisitor::ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitMap >::Visit(), v8::internal::MarkCompactMarkingVisitor::ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitCode >::Visit(), and v8::internal::MarkCompactMarkingVisitor::ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitFixedArray >::Visit().
Definition at line 4259 of file objects-inl.h.
References v8::internal::BYTE_ARRAY_TYPE, v8::internal::CODE_TYPE, v8::internal::CONSTANT_POOL_ARRAY_TYPE, DCHECK, v8::internal::FIRST_FIXED_TYPED_ARRAY_TYPE, v8::internal::FIXED_ARRAY_TYPE, v8::internal::FIXED_DOUBLE_ARRAY_TYPE, v8::internal::FREE_SPACE_TYPE, v8::internal::Map::instance_size(), v8::internal::Map::instance_type(), v8::internal::INTERNALIZED_STRING_TYPE, v8::internal::kVariableSizeSentinel, v8::internal::LAST_FIXED_TYPED_ARRAY_TYPE, map(), v8::internal::ONE_BYTE_INTERNALIZED_STRING_TYPE, v8::internal::ONE_BYTE_STRING_TYPE, size, v8::internal::FixedDoubleArray::SizeFor(), v8::internal::SeqOneByteString::SizeFor(), v8::internal::SeqTwoByteString::SizeFor(), v8::internal::FixedArray::BodyDescriptor::SizeOf(), and v8::internal::STRING_TYPE.
Referenced by v8::internal::String::MakeExternal(), Size(), and v8::internal::Sweep().
v8::internal::HeapObject::STATIC_ASSERT | ( | kMapOffset | = =Internals::kHeapObjectMapOffset | ) |
Referenced by v8::internal::ConstantPoolArray::get_int64_entry_as_double(), v8::internal::Map::Normalize(), and v8::internal::ConstantPoolArray::set().
|
inline |
Definition at line 1414 of file objects-inl.h.
References synchronized_map_word().
|
inline |
Definition at line 1452 of file objects-inl.h.
References ACQUIRE_READ_FIELD, and kMapOffset.
Referenced by synchronized_map().
|
inline |
Definition at line 1419 of file objects-inl.h.
References GetHeap(), v8::internal::Heap::incremental_marking(), NULL, and synchronized_set_map_word().
Referenced by v8::internal::String::MakeExternal().
|
inline |
Definition at line 1429 of file objects-inl.h.
References synchronized_set_map_word().
Referenced by v8::internal::FreeListNode::set_size().
|
inline |
Definition at line 1458 of file objects-inl.h.
References kMapOffset, map_word(), and RELEASE_WRITE_FIELD.
Referenced by synchronized_set_map(), and synchronized_set_map_no_write_barrier().
|
static |
Definition at line 4158 of file objects.cc.
References map(), name, and v8::internal::Map::UpdateCodeCache().
Referenced by v8::internal::StoreIC::CompileHandler().
|
static |
|
static |
Definition at line 1427 of file objects.h.
Referenced by v8::internal::HLoadEliminationEffects::Apply(), v8::internal::LCodeGen::DoDeferredMathAbsTaggedHeapNumber(), v8::internal::LCodeGen::DoDeferredTaggedToI(), v8::internal::LCodeGen::EmitClassOfTest(), v8::internal::LCodeGen::EmitIsObject(), v8::internal::LCodeGen::EmitNumberUntagD(), v8::internal::LCodeGen::EmitTypeofIs(), v8::internal::FINAL< kOperandKind, kNumCachedOperands >::ForMap(), v8::internal::FINAL< kOperandKind, kNumCachedOperands >::ForMapAsInteger32(), v8::internal::MacroAssembler::IsObjectJSObjectType(), v8::internal::MacroAssembler::IsObjectJSStringType(), v8::internal::MacroAssembler::IsObjectStringType(), v8::internal::V8HeapExplorer::IterateAndExtractSinglePass(), v8::internal::Heap::LeftTrimFixedArray(), map_word(), v8::internal::HLoadEliminationTable::Process(), set_map_word(), v8::internal::HLoadEliminationTable::store(), synchronized_map_word(), and synchronized_set_map_word().