v8  3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
HeapObject Class Reference

#include <objects.h>

Inheritance diagram for HeapObject:
Collaboration diagram for HeapObject:

Public Member Functions

Mapmap ()
 
void set_map (Map *value)
 
void set_map_no_write_barrier (Map *value)
 
MapWord map_word ()
 
void set_map_word (MapWord map_word)
 
HeapGetHeap ()
 
IsolateGetIsolate ()
 
Address address ()
 
void Iterate (ObjectVisitor *v)
 
void IterateBody (InstanceType type, int object_size, ObjectVisitor *v)
 
int Size ()
 
int SizeFromMap (Map *map)
 
WriteBarrierMode GetWriteBarrierMode (const DisallowHeapAllocation &promise)
 
void HeapObjectShortPrint (StringStream *accumulator)
 
 STATIC_CHECK (kMapOffset==Internals::kHeapObjectMapOffset)
 
- Public Member Functions inherited from Object
bool IsObject ()
 
bool IsFixedArrayBase ()
 
bool IsExternal ()
 
bool IsAccessorInfo ()
 
bool IsStruct ()
 
 INLINE (bool IsSpecObject())
 
 INLINE (bool IsSpecFunction())
 
bool IsCallable ()
 
 INLINE (bool IsUndefined())
 
 INLINE (bool IsNull())
 
 INLINE (bool IsTheHole())
 
 INLINE (bool IsUninitialized())
 
 INLINE (bool IsTrue())
 
 INLINE (bool IsFalse())
 
bool IsArgumentsMarker ()
 
bool NonFailureIsHeapObject ()
 
bool IsFiller ()
 
double Number ()
 
bool IsNaN ()
 
bool ToInt32 (int32_t *value)
 
bool ToUint32 (uint32_t *value)
 
Representation OptimalRepresentation (ValueType type=OPTIMAL_REPRESENTATION)
 
bool FitsRepresentation (Representation representation)
 
MaybeObject * AllocateNewStorageFor (Heap *heap, Representation representation)
 
bool HasValidElements ()
 
bool HasSpecificClassOf (String *name)
 
MUST_USE_RESULT MaybeObject * ToObject (Isolate *isolate)
 
bool BooleanValue ()
 
MUST_USE_RESULT MaybeObject * ToObject (Context *native_context)
 
MUST_USE_RESULT MaybeObject * ToSmi ()
 
void Lookup (Name *name, LookupResult *result)
 
MUST_USE_RESULT MaybeObject * GetProperty (Name *key)
 
MUST_USE_RESULT MaybeObject * GetProperty (Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithReceiver (Object *receiver, Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetProperty (Object *receiver, LookupResult *result, Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithDefinedGetter (Object *receiver, JSReceiver *getter)
 
ObjectGetPrototype (Isolate *isolate)
 
MapGetMarkerMap (Isolate *isolate)
 
ObjectGetHash ()
 
bool SameValue (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 Member Functions

static HeapObjectFromAddress (Address address)
 
static Object ** RawField (HeapObject *obj, int offset)
 
static void UpdateMapCodeCache (Handle< HeapObject > object, Handle< Name > name, Handle< Code > code)
 
static HeapObjectcast (Object *obj)
 
- Static Public Member Functions inherited from Object
static MUST_USE_RESULT Handle
< Object
ToSmi (Isolate *isolate, Handle< Object > object)
 
static Handle< ObjectGetPropertyWithReceiver (Handle< Object > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes)
 
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Name > key)
 
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes)
 
static MUST_USE_RESULT
MaybeObject * 
GetPropertyOrFail (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes)
 
static Handle< ObjectGetElement (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static Handle< ObjectGetElementNoExceptionThrown (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static Handle< ObjectGetElementWithReceiver (Isolate *isolate, Handle< Object > object, Handle< Object > receiver, uint32_t index)
 
static Handle< ObjectGetOrCreateHash (Handle< Object > object, Isolate *isolate)
 
static Objectcast (Object *value)
 

Static Public Attributes

static const int kMapOffset = Object::kHeaderSize
 
static const int kHeaderSize = kMapOffset + kPointerSize
 
- Static Public Attributes inherited from Object
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)
 

Additional Inherited Members

- Public Types inherited from Object
enum  ValueType { OPTIMAL_REPRESENTATION, FORCE_TAGGED }
 

Detailed Description

Definition at line 1803 of file objects.h.

Member Function Documentation

Address address ( )
inline

Definition at line 1375 of file objects-inl.h.

References v8::internal::kHeapObjectTag.

Referenced by FreeList::Allocate(), Heap::AllocateArgumentsObject(), Heap::AllocateOneByteInternalizedString(), Heap::AllocateRaw(), PagedSpace::AllocateRaw(), Heap::AllocateTwoByteInternalizedString(), AllocationTracker::AllocationEvent(), Heap::AllowedToBeMigrated(), IncrementalMarking::BlackToGreyAndUnshift(), Code::CanDeoptAt(), CpuProfiler::CodeCreateEvent(), Logger::CodeCreateEvent(), Code::CodeIterateBody(), Heap::Contains(), PagedSpace::Contains(), Code::contains(), FreeListCategory::ContainsPageFreeListItemsInList(), Heap::CopyCode(), Heap::CopyConstantPoolArrayWithMap(), Heap::CopyFixedArrayWithMap(), Heap::CopyFixedDoubleArrayWithMap(), Heap::CopyJSObject(), Heap::CreateCode(), LargeObjectSpace::FreeUnmarkedObjects(), HeapProfiler::GetSnapshotObjectId(), IncrementalMarking::Hurry(), MarkingDeque::INLINE(), IncrementalMarkingMarkingVisitor::INLINE(), Heap::InSpace(), JSFunction::JSFunctionIterateBody(), String::MakeExternal(), IndexedReferencesExtractor::MarkVisitedField(), MarkCompactCollector::MigrateObject(), JSObject::MigrateToMap(), Heap::MoveElements(), FreeListNode::next(), BASE_EMBEDDED< Visitor >::next(), FreeListNode::next_address(), FixedArray::NoIncrementalWriteBarrierSet(), FreeListCategory::PickNodeFromList(), IncrementalMarking::RecordWriteFromCode(), IncrementalMarking::RecordWrites(), CpuProfiler::RegExpCodeCreateEvent(), Heap::ReinitializeJSReceiver(), FreeListCategory::RepairFreeList(), MarkCompactCollector::ReportDeleteIfNeeded(), Heap::ReserveSpace(), Serializer::ObjectSerializer::Serialize(), FreeListNode::set_next(), TEST(), IncrementalMarking::UpdateMarkingDequeAfterScavenge(), IncrementalMarkingMarkingVisitor::VisitFixedArrayIncremental(), and StaticMarkingVisitor< StaticVisitor >::VisitJSFunctionStrongCode().

static HeapObject* cast ( Object obj)
inlinestatic

Referenced by Heap::Allocate(), Heap::AllocateArgumentsObject(), Heap::AllocateConstantPoolArray(), Heap::AllocateHeapNumber(), Heap::AllocateRawOneByteString(), Heap::AllocateRawTwoByteString(), Heap::AllocateSymbol(), TypeFeedbackOracle::CanRetainOtherContext(), FixedTypedArray< Traits >::cast(), JSGeneratorObject::cast(), JSModule::cast(), JSValue::cast(), JSDate::cast(), JSMessageObject::cast(), CompareNilIC::CompareNil(), HeapObjectsSet::Contains(), Heap::CopyAndTenureFixedCOWArray(), Heap::CopyConstantPoolArrayWithMap(), Heap::CopyFixedArrayWithMap(), Heap::CopyFixedDoubleArrayWithMap(), Heap::CopyJSObject(), Code::FindAndReplace(), Code::FindNthObject(), IC::GetCodeCacheHolder(), Execution::GetConstructorDelegate(), Execution::GetFunctionDelegate(), Object::GetMarkerMap(), Object::GetPrototype(), HeapProfiler::GetSnapshotObjectId(), HeapObjectsSet::GetTag(), HeapTypeConfig::handle(), IncrementalMarking::Hurry(), IncrementalMarkingMarkingVisitor::INLINE(), MarkCompactMarkingVisitor::INLINE(), HeapObjectsSet::Insert(), Object::IsCallable(), TypeImpl< class >::IsCurrently(), Object::IsExternal(), Object::IsFiller(), MarkCompactCollector::IsMarked(), TransitionArray::IsSimpleTransition(), Object::IsStruct(), FunctionTemplateInfo::IsTemplateFor(), Heap::IterateAndMarkPointersToFromSpace(), JSObject::JSObjectShortPrint(), StaticMarkingVisitor< StaticVisitor >::MarkMapContents(), StaticMarkingVisitor< StaticVisitor >::MarkTransitionArray(), MarkCompactCollector::MarkWeakObjectToCodeTable(), TypeImpl< class >::OfCurrently(), StringStream::PrintFunction(), StringStream::PrintSecurityTokenIfChanged(), Map::PutPrototypeTransition(), IncrementalMarking::RecordWriteIntoCodeSlow(), ScavengeWeakObjectRetainer::RetainAs(), MarkCompactWeakObjectRetainer::RetainAs(), EvacuationWeakObjectRetainer::RetainAs(), v8::internal::RUNTIME_FUNCTION(), PartialSerializer::SerializeObject(), StartupSerializer::SerializeObject(), HeapObjectsSet::SetTag(), Object::ShortPrint(), TEST(), Execution::TryGetConstructorDelegate(), Execution::TryGetFunctionDelegate(), MarkCompactCollector::TryPromoteObject(), PointersUpdatingVisitor::UpdateSlot(), Serializer::ObjectSerializer::VisitPointers(), StringTableCleaner< finalize_external_strings >::VisitPointers(), and VerifyPointersVisitor::VisitPointers().

Heap * GetHeap ( )
inline

Definition at line 1323 of file objects-inl.h.

References MemoryChunk::FromAddress(), MemoryChunk::heap(), v8::internal::NULL, and SLOW_ASSERT.

Referenced by ElementsAccessorBase< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS > >::AddElementsToFixedArray(), Dictionary< Shape, Key >::AddEntry(), Context::AddOptimizedFunction(), SharedFunctionInfo::AddToOptimizedCodeMap(), Dictionary< Shape, Key >::AtPut(), SharedFunctionInfo::AttachInitialMap(), JSReceiver::class_name(), JSFunctionResultCache::Clear(), Map::ClearNonLiveTransitions(), SharedFunctionInfo::ClearOptimizedCodeMap(), SharedFunctionInfo::CompleteInobjectSlackTracking(), Map::constructor_name(), FixedArray::ContainsOnlySmisOrHoles(), FixedArray::Copy(), FixedDoubleArray::Copy(), ConstantPoolArray::Copy(), Map::CopyDropDescriptors(), FixedArray::CopySize(), DescriptorArray::CopyUpToAddAttributes(), Dictionary< Shape, Key >::DeleteProperty(), Deoptimizer::DeoptimizeGlobalObject(), Map::DeprecateTarget(), SharedFunctionInfo::DetachInitialMap(), Map::DictionaryElementsInPrototypeChainOnly(), Map::elements_transition_map(), HashTable< Shape, Key >::EnsureCapacity(), SharedFunctionInfo::EvictFromOptimizedCodeMap(), JSObject::FastPropertyAt(), JSObject::FastPropertyAtPut(), Code::FindFirstAllocationSite(), Code::FindFirstMap(), Map::FindInCodeCache(), Dictionary< Shape, Key >::GenerateNewEnumerationIndices(), FixedDoubleArray::get(), ExternalInt32Array::get(), ExternalUint32Array::get(), ExternalFloat32Array::get(), ExternalFloat64Array::get(), ConstantPoolArray::get_code_ptr_entry(), ConstantPoolArray::get_heap_ptr_entry(), ConstantPoolArray::get_int32_entry(), ConstantPoolArray::get_int64_entry(), ConstantPoolArray::get_int64_entry_as_double(), FixedDoubleArray::get_representation(), FixedDoubleArray::get_scalar(), TraversableMap::GetAndResetParent(), AccessorPair::GetComponent(), JSObject::GetElementsKind(), JSProxy::GetElementWithHandler(), JSObject::GetHiddenProperty(), ElementsAccessorBase< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS > >::GetImpl(), TypedElementsAccessor< Kind >::GetImpl(), DictionaryElementsAccessor::GetImpl(), HeapObject::GetIsolate(), JSObject::GetLocalPropertyPostInterceptor(), Map::GetPrototypeTransitions(), HeapObject::GetWriteBarrierMode(), JSObject::HasDictionaryArgumentsElements(), TransitionArray::HasElementsTransition(), JSObject::HasFastArgumentsElements(), HeapObject::HeapObjectShortPrint(), AllocationSite::Initialize(), JSObject::initialize_elements(), JSObject::InitializeBody(), Struct::InitializeBody(), FlexibleBodyVisitor< StaticVisitor, BodyDescriptor, ReturnType >::INLINE(), FixedBodyVisitor< StaticVisitor, BodyDescriptor, ReturnType >::INLINE(), MarkCompactMarkingVisitor::INLINE(), JSObject::InObjectPropertyAtPut(), Code::InvalidateEmbeddedObjects(), Code::InvalidateRelocation(), FixedArray::is_the_hole(), Context::IsBlockContext(), Context::IsCatchContext(), DescriptorArray::IsEmpty(), Object::IsExternal(), Context::IsFunctionContext(), Context::IsGlobalContext(), Context::IsModuleContext(), Context::IsNativeContext(), AllocationSite::IsNestedSite(), JSReceiver::IsSimpleEnum(), Context::IsWithContext(), JSArray::JSArrayUpdateLengthFromIndex(), JSObject::JSObjectShortPrint(), JSReceiver::LocalLookup(), JSReceiver::Lookup(), MapCache::Lookup(), ObjectHashTable::Lookup(), WeakHashTable::Lookup(), CompilationCacheTable::Lookup(), CodeCache::Lookup(), CodeCacheHashTable::Lookup(), PolymorphicCodeCacheHashTable::Lookup(), JSObject::LookupCallbackProperty(), CompilationCacheTable::LookupEval(), StringTable::LookupKey(), CompilationCacheTable::LookupRegExp(), StringTable::LookupTwoCharsStringIfExists(), String::MakeExternal(), String::MarkAsUndetectable(), JSTypedArray::Neuter(), FreeListNode::next(), IntrusiveMapTransitionIterator::Next(), IntrusivePrototypeTransitionIterator::Next(), FreeListNode::next_address(), FixedArray::NoIncrementalWriteBarrierSet(), FixedArray::NoWriteBarrierSet(), MarkCompactMarkingVisitor::ObjectStatsCountFixedArray(), MarkCompactMarkingVisitor::ObjectStatsVisitBase(), IC::PostPatching(), JSObject::PrepareSlowElementsForSort(), StringStream::PrintFixedArray(), StringStream::PrintFunction(), StringStream::PrintUsingMap(), CompilationCacheTable::Put(), CodeCacheHashTable::Put(), PolymorphicCodeCacheHashTable::Put(), CompilationCacheTable::PutEval(), Map::RawCopy(), JSObject::ReferencesObject(), CompilationCacheTable::Remove(), CodeCacheHashTable::RemoveByIndex(), Context::RemoveOptimizedFunction(), JSFunction::RemovePrototype(), SharedFunctionInfo::ReplaceCode(), JSObject::ResetElements(), MarkCompactWeakObjectRetainer::RetainAs(), Heap::ScavengeObject(), PartialSerializer::SerializeObject(), FixedArray::set(), FixedDoubleArray::set(), ConstantPoolArray::set(), SeededNumberDictionary::Set(), UnseededNumberDictionary::Set(), TransitionArray::set_back_pointer_storage(), JSFunction::set_code(), JSFunction::set_code_no_write_barrier(), Code::set_constant_pool(), JSFunction::set_context(), Map::set_elements_transition_map(), ConsString::set_first(), JSFunction::set_function_bindings(), JSBuiltinsObject::set_javascript_builtin(), JSBuiltinsObject::set_javascript_builtin_code(), HeapObject::set_map(), JSObject::set_map_and_elements(), AllocationSite::set_memento_found_count(), FreeListNode::set_next(), FixedArray::set_null(), SlicedString::set_parent(), ConsString::set_second(), FixedArray::set_the_hole(), FixedDoubleArray::set_the_hole(), Code::set_type_feedback_info(), FixedArray::set_undefined(), Map::SetBackPointer(), JSObject::SetInternalField(), DictionaryElementsAccessor::SetLengthWithoutNormalize(), TransitionArray::SetPrototypeTransitions(), IC::SetTargetAtAddress(), ExternalInt8Array::SetValue(), ExternalUint8Array::SetValue(), ExternalInt16Array::SetValue(), ExternalUint16Array::SetValue(), ExternalInt32Array::SetValue(), ExternalUint32Array::SetValue(), ExternalFloat32Array::SetValue(), ExternalFloat64Array::SetValue(), Map::ShareDescriptor(), JSObject::ShouldConvertToFastElements(), JSObject::ShouldConvertToSlowElements(), FixedArray::Shrink(), HashTable< Shape, Key >::Shrink(), JSObject::SlowReverseLookup(), Dictionary< Shape, Key >::SlowReverseLookup(), Serializer::SpaceOfObject(), SharedFunctionInfo::StartInobjectSlackTracking(), String::ToCString(), String::ToWideCString(), NameDictionary::TransformPropertiesToFastFor(), SharedFunctionInfo::TrimOptimizedCodeMap(), CodeCache::Update(), PolymorphicCodeCache::Update(), Map::UpdateCodeCache(), FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::ValidateContents(), MarkCompactMarkingVisitor::ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitMap >::Visit(), MarkCompactMarkingVisitor::ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitCode >::Visit(), MarkCompactMarkingVisitor::ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitSharedFunctionInfo >::Visit(), MarkCompactMarkingVisitor::ObjectStatsTracker< MarkCompactMarkingVisitor::kVisitFixedArray >::Visit(), IncrementalMarkingMarkingVisitor::VisitFixedArrayIncremental(), FlexibleBodyVisitor< StaticVisitor, BodyDescriptor, ReturnType >::VisitSpecialized(), IncrementalMarkingMarkingVisitor::VisitWeakCollection(), MarkCompactMarkingVisitor::VisitWeakCollection(), Map::ZapPrototypeTransitions(), and Map::ZapTransitions().

Isolate * GetIsolate ( )
inline

Definition at line 1331 of file objects-inl.h.

References HeapObject::GetHeap(), and Heap::isolate().

Referenced by HeapTypeConfig::as_constant(), v8::internal::CacheInitialJSArrayMaps(), JSProxy::CallTrap(), v8::internal::CheckArrayAbuse(), CompareNilIC::Clear(), Code::CodeIterateBody(), ScopeInfo::ContextSlotIndex(), Map::CopyAddDescriptor(), TransitionArray::CopyInsert(), Map::CopyReplaceDescriptor(), DescriptorArray::CopyUpToAddAttributes(), DictionaryElementsAccessor::DeleteCommon(), Map::DeprecateTransitionTree(), Map::DictionaryElementsInPrototypeChainOnly(), SharedFunctionInfo::DisableOptimization(), JSObject::EnsureWritableFastElements(), Context::ErrorMessageForCodeGenerationFromStrings(), TransitionArray::ExtendToFullTransitionArray(), HashTable< Shape, Key >::FindEntry(), JSReceiver::GenerateIdentityHash(), FixedDoubleArray::get_as_handle(), JSTypedArray::GetBuffer(), JSObject::GetLocalPropertyAccessorPair(), JSObject::GetLocalPropertyPostInterceptor(), Object::GetProperty(), Object::GetPropertyWithDefinedGetter(), JSProxy::GetPropertyWithHandler(), Object::GetPropertyWithReceiver(), SharedFunctionInfo::GetSourceCode(), Context::global_object(), Map::has_code_cache(), PromotionQueue::insert(), SharedFunctionInfo::is_compiled(), JSFunction::is_compiled(), JSFunction::IsInOptimizationQueue(), Map::IsMapInArrayPrototypeChain(), JSFunction::IsMarkedForConcurrentOptimization(), JSFunction::IsMarkedForOptimization(), String::LooksValid(), Context::Lookup(), PolymorphicCodeCache::Lookup(), JSObject::LookupRealNamedPropertyInPrototypes(), Code::MakeOlder(), JSFunction::MarkForConcurrentOptimization(), JSFunction::MarkForOptimization(), JSFunction::MarkInOptimizationQueue(), DescriptorArray::Merge(), Context::native_context(), TransitionArray::NewWith(), Map::NotifyLeafMapLayoutChange(), Code::PrintDeoptLocation(), Map::PrintGeneralization(), StringStream::PrintPrototype(), StringStream::PrintSecurityTokenIfChanged(), JSObject::ResetElements(), Heap::ScavengeObject(), JSDate::SetValue(), Map::ShareDescriptor(), NameDictionary::TransformPropertiesToFastFor(), ContextSlotCache::Update(), KeyedLookupCache::Update(), and VerifyPointersVisitor::VisitPointers().

void IterateBody ( InstanceType  type,
int  object_size,
ObjectVisitor *  v 
)

Definition at line 1760 of file objects.cc.

References v8::internal::ALLOCATION_SITE_TYPE, v8::internal::BYTE_ARRAY_TYPE, v8::internal::CELL_TYPE, v8::internal::CODE_TYPE, v8::internal::CONSTANT_POOL_ARRAY_TYPE, v8::internal::FILLER_TYPE, v8::internal::FIRST_NONSTRING_TYPE, v8::internal::FIXED_ARRAY_TYPE, v8::internal::FIXED_DOUBLE_ARRAY_TYPE, v8::internal::FOREIGN_TYPE, v8::internal::FREE_SPACE_TYPE, v8::internal::HEAP_NUMBER_TYPE, FixedBodyDescriptor< start_offset, end_offset, size >::IterateBody(), FlexibleBodyDescriptor< kPropertiesOffset >::IterateBody(), FlexibleBodyDescriptor< kHeaderSize >::IterateBody(), FlexibleBodyDescriptor< HeapObject::kHeaderSize >::IterateBody(), v8::internal::JS_ARRAY_BUFFER_TYPE, v8::internal::JS_ARRAY_TYPE, v8::internal::JS_BUILTINS_OBJECT_TYPE, v8::internal::JS_CONTEXT_EXTENSION_OBJECT_TYPE, v8::internal::JS_DATA_VIEW_TYPE, v8::internal::JS_DATE_TYPE, v8::internal::JS_FUNCTION_PROXY_TYPE, v8::internal::JS_FUNCTION_TYPE, v8::internal::JS_GENERATOR_OBJECT_TYPE, v8::internal::JS_GLOBAL_OBJECT_TYPE, v8::internal::JS_GLOBAL_PROXY_TYPE, v8::internal::JS_MAP_TYPE, v8::internal::JS_MESSAGE_OBJECT_TYPE, v8::internal::JS_MODULE_TYPE, v8::internal::JS_OBJECT_TYPE, v8::internal::JS_PROXY_TYPE, v8::internal::JS_REGEXP_TYPE, v8::internal::JS_SET_TYPE, v8::internal::JS_TYPED_ARRAY_TYPE, v8::internal::JS_VALUE_TYPE, v8::internal::JS_WEAK_MAP_TYPE, v8::internal::JS_WEAK_SET_TYPE, v8::internal::kConsStringTag, v8::internal::kExternalStringTag, v8::internal::kOneByteStringTag, v8::internal::kSeqStringTag, v8::internal::kSlicedStringTag, v8::internal::kStringEncodingMask, v8::internal::kStringRepresentationMask, MAKE_STRUCT_CASE, v8::internal::MAP_TYPE, v8::internal::ODDBALL_TYPE, v8::internal::PrintF(), v8::internal::PROPERTY_CELL_TYPE, v8::internal::SHARED_FUNCTION_INFO_TYPE, STRUCT_LIST, v8::internal::SYMBOL_TYPE, TYPED_ARRAY_CASE, TYPED_ARRAYS, and UNREACHABLE.

Referenced by HeapObject::Iterate(), and Serializer::ObjectSerializer::Serialize().

void IterateNextCodeLink ( ObjectVisitor *  v,
int  offset 
)
inlineprotected

Definition at line 1396 of file objects-inl.h.

References FIELD_ADDR.

Referenced by Code::CodeIterateBody().

void IteratePointer ( ObjectVisitor *  v,
int  offset 
)
inlineprotected

Definition at line 1391 of file objects-inl.h.

References FIELD_ADDR.

Referenced by Code::CodeIterateBody(), and HeapObject::Iterate().

void IteratePointers ( ObjectVisitor *  v,
int  start,
int  end 
)
inlineprotected
Map * map ( )
inline

Definition at line 1336 of file objects-inl.h.

References HeapObject::map_word().

Referenced by AccumulateStatsWithOperator(), Heap::AllocateArgumentsObject(), Heap::AllowedToBeMigrated(), FixedTypedArray< Traits >::cast(), TraversableMap::ChildIteratorNext(), JSReceiver::class_name(), StubCache::Clear(), CompareNilIC::CompareNil(), JSReceiver::constructor_name(), ConsStringIteratorOp::ContinueOperation(), Heap::CopyConstantPoolArray(), Heap::CopyFixedArray(), Heap::CopyFixedDoubleArray(), Heap::CopyJSObject(), FixedArray::CopySize(), FixedTypedArrayBase::DataSize(), Map::DictionaryElementsInPrototypeChainOnly(), JSTypedArray::element_size(), JSObject::EnsureWritableFastElements(), JSObject::FastPropertyAtPut(), Code::FindAllTypes(), Code::FindAndReplace(), Code::FindNthObject(), Map::GeneralizeAllFieldRepresentations(), NormalizedMapCache::Get(), ConstantPoolArray::get_code_ptr_entry(), ConstantPoolArray::get_heap_ptr_entry(), ConstantPoolArray::get_int32_entry(), ConstantPoolArray::get_int64_entry(), ConstantPoolArray::get_int64_entry_as_double(), FixedDoubleArray::get_representation(), FixedDoubleArray::get_scalar(), TraversableMap::GetAndResetParent(), JSTypedArray::GetBuffer(), JSReceiver::GetConstructor(), Execution::GetConstructorDelegate(), JSObject::GetElementsKind(), JSObject::GetElementsTransitionMap(), JSObject::GetElementsTransitionMapSlow(), v8::internal::GetEnumPropertyKeys(), Execution::GetFunctionDelegate(), JSObject::GetHeaderSize(), JSObject::GetIndexedInterceptor(), JSObject::GetInObjectPropertyOffset(), JSObject::GetInternalFieldCount(), JSObject::GetLocalPropertyNames(), Object::GetMarkerMap(), JSObject::GetNamedInterceptor(), Object::GetPrototype(), JSReceiver::GetPrototype(), TransitionArray::GetTargetDetails(), JSFunction::has_prototype(), JSObject::HasDictionaryArgumentsElements(), JSObject::HasFastArgumentsElements(), JSObject::HasFastProperties(), JSObject::HasIndexedInterceptor(), JSObject::HasNamedInterceptor(), String::HasOnlyOneByteChars(), HeapObject::HeapObjectShortPrint(), JSObject::initialize_elements(), MarkCompactMarkingVisitor::INLINE(), Heap::InternalizedStringMapForString(), ExternalString::is_short(), Context::IsBlockContext(), Object::IsCallable(), Context::IsCatchContext(), TypeImpl< class >::IsCurrently(), JSObject::IsDirty(), Object::IsExternal(), Object::IsFiller(), FreeListNode::IsFreeListNode(), Context::IsFunctionContext(), Context::IsGlobalContext(), Context::IsModuleContext(), Context::IsNativeContext(), String::IsOneByteRepresentation(), String::IsOneByteRepresentationUnderneath(), JSReceiver::IsSimpleEnum(), TransitionArray::IsSimpleTransition(), FunctionTemplateInfo::IsTemplateFor(), String::IsTwoByteRepresentation(), String::IsTwoByteRepresentationUnderneath(), Context::IsWithContext(), HeapObject::Iterate(), JSObject::JSObjectShortPrint(), JSReceiver::LocalLookup(), JSObject::LocalLookupRealNamedProperty(), String::MarkAsUndetectable(), Isolate::MayIndexedAccess(), Isolate::MayNamedAccess(), Heap::MoveElements(), JSTypedArray::Neuter(), FreeListNode::next(), FreeListNode::next_address(), FixedArray::NoIncrementalWriteBarrierSet(), JSObject::NormalizeProperties(), FixedArray::NoWriteBarrierSet(), JSObject::NumberOfLocalProperties(), MarkCompactMarkingVisitor::ObjectStatsCountFixedArray(), TypeImpl< class >::OfCurrently(), StringStream::PrintFunction(), JSObject::PrintInstanceMigration(), StringStream::PrintSecurityTokenIfChanged(), StringStream::PrintUsingMap(), JSFunction::prototype(), Map::PutPrototypeTransition(), JSObject::RawFastPropertyAt(), NewSpace::RecordAllocation(), NewSpace::RecordPromotion(), Heap::RecordStats(), JSObject::ReferencesObject(), Heap::ReinitializeJSReceiver(), JSFunction::RemovePrototype(), Isolate::ReportFailedAccessCheck(), JSObject::ResetElements(), v8::internal::RUNTIME_FUNCTION(), Heap::ScavengeObject(), Serializer::ObjectSerializer::Serialize(), FixedArray::set(), FixedDoubleArray::set(), ConstantPoolArray::set(), JSFunction::set_function_bindings(), JSObject::set_map_and_elements(), FreeListNode::set_next(), FixedArray::set_the_hole(), FixedDoubleArray::set_the_hole(), FixedArray::set_undefined(), JSObject::SetPrototype(), Map::ShareDescriptor(), JSFunction::should_have_prototype(), PartialSerializer::ShouldBeInThePartialSnapshotCache(), JSObject::ShouldConvertToFastElements(), HeapObject::Size(), JSObject::SlowReverseLookup(), KeyedStoreIC::Store(), TEST(), JSObject::TooManyFastProperties(), NameDictionary::TransformPropertiesToFastFor(), Execution::TryGetConstructorDelegate(), Execution::TryGetFunctionDelegate(), JSTypedArray::type(), Heap::UpdateAllocationSiteFeedback(), HeapObject::UpdateMapCodeCache(), IncrementalMarking::UpdateMarkingDequeAfterScavenge(), FastElementsAccessor< FastPackedSmiElementsAccessor, ElementsKindTraits< FAST_SMI_ELEMENTS >, kPointerSize >::ValidateContents(), String::Visit(), GlobalObjectsEnumerator::VisitPointers(), VerifyPointersVisitor::VisitPointers(), and MarkCompactMarkingVisitor::VisitWeakCollection().

void set_map_word ( MapWord  map_word)
inline
void UpdateMapCodeCache ( Handle< HeapObject object,
Handle< Name name,
Handle< Code code 
)
static

Field Documentation

const int kHeaderSize = kMapOffset + kPointerSize
static

Definition at line 1891 of file objects.h.

Referenced by Struct::InitializeBody(), and v8::internal::RUNTIME_FUNCTION().


The documentation for this class was generated from the following files: