v8
3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
|
#include <objects-visiting.h>
Data Structures | |
class | DataObjectVisitor |
Static Public Member Functions | |
static void | Initialize () |
static void | IterateBody (Map *map, HeapObject *obj) |
static void | VisitCodeEntry (Heap *heap, Address entry_address) |
static void | VisitEmbeddedPointer (Heap *heap, RelocInfo *rinfo) |
static void | VisitGlobalPropertyCell (Heap *heap, RelocInfo *rinfo) |
static void | VisitDebugTarget (Heap *heap, RelocInfo *rinfo) |
static void | VisitCodeTarget (Heap *heap, RelocInfo *rinfo) |
static void | VisitExternalReference (RelocInfo *rinfo) |
static void | VisitRuntimeEntry (RelocInfo *rinfo) |
static void | VisitNativeContext (Map *map, HeapObject *object) |
static void | MarkInlinedFunctionsCode (Heap *heap, Code *code) |
Static Public Member Functions inherited from StaticVisitorBase | |
static VisitorId | GetVisitorId (int instance_type, int instance_size) |
static VisitorId | GetVisitorId (Map *map) |
static VisitorId | GetVisitorIdForSize (VisitorId base, VisitorId generic, int object_size) |
Protected Types | |
typedef FlexibleBodyVisitor < StaticVisitor, JSObject::BodyDescriptor, void > | JSObjectVisitor |
typedef FlexibleBodyVisitor < StaticVisitor, StructBodyDescriptor, void > | StructObjectVisitor |
typedef void(* | Callback )(Map *map, HeapObject *object) |
Static Protected Member Functions | |
static void | VisitMap (Map *map, HeapObject *object) |
static void | VisitCode (Map *map, HeapObject *object) |
static void | VisitSharedFunctionInfo (Map *map, HeapObject *object) |
static void | VisitJSFunction (Map *map, HeapObject *object) |
static void | VisitJSRegExp (Map *map, HeapObject *object) |
static void | MarkMapContents (Heap *heap, Map *map) |
static void | MarkTransitionArray (Heap *heap, TransitionArray *transitions) |
static bool | IsFlushable (Heap *heap, JSFunction *function) |
static bool | IsFlushable (Heap *heap, SharedFunctionInfo *shared_info) |
static void | VisitSharedFunctionInfoStrongCode (Heap *heap, HeapObject *object) |
static void | VisitSharedFunctionInfoWeakCode (Heap *heap, HeapObject *object) |
static void | VisitJSFunctionStrongCode (Heap *heap, HeapObject *object) |
static void | VisitJSFunctionWeakCode (Heap *heap, HeapObject *object) |
Static Protected Attributes | |
static VisitorDispatchTable < Callback > | table_ |
Additional Inherited Members | |
Public Types inherited from StaticVisitorBase | |
enum | VisitorId { kVisitorIdCount, kVisitDataObject = kVisitDataObject2, kVisitJSObject = kVisitJSObject2, kVisitStruct = kVisitStruct2, kMinObjectSizeInWords = 2 } |
Public Member Functions inherited from StaticVisitorBase | |
STATIC_ASSERT (kVisitorIdCount<=256) | |
Definition at line 381 of file objects-visiting.h.
|
protected |
Definition at line 446 of file objects-visiting.h.
|
protected |
Definition at line 440 of file objects-visiting.h.
|
protected |
Definition at line 444 of file objects-visiting.h.
|
static |
Definition at line 97 of file objects-visiting-inl.h.
Referenced by IncrementalMarkingMarkingVisitor::Initialize(), and MarkCompactMarkingVisitor::Initialize().
|
inlinestaticprotected |
Definition at line 444 of file objects-visiting-inl.h.
References MarkBit::Get(), Marking::MarkBitFrom(), and SharedFunctionInfo::set_code_age().
|
inlinestaticprotected |
Definition at line 473 of file objects-visiting-inl.h.
References SharedFunctionInfo::code_age(), MarkBit::Get(), SharedFunctionInfo::is_compiled(), Marking::MarkBitFrom(), and SharedFunctionInfo::set_code_age().
|
inlinestatic |
Definition at line 385 of file objects-visiting.h.
Definition at line 413 of file objects-visiting-inl.h.
References DeoptimizationInputData::cast(), JSFunction::cast(), and JSFunction::code().
Definition at line 360 of file objects-visiting-inl.h.
References ASSERT, HeapObject::cast(), Map::GetBackPointer(), Map::kPointerFieldsBeginOffset, Map::kPointerFieldsEndOffset, HeapObject::RawField(), and Map::unchecked_transition_array().
|
staticprotected |
Definition at line 389 of file objects-visiting-inl.h.
References HeapObject::cast(), TransitionArray::GetKeySlot(), TransitionArray::GetPrototypeTransitionsSlot(), TransitionArray::HasPrototypeTransitions(), TransitionArray::IsSimpleTransition(), Heap::mark_compact_collector(), and TransitionArray::number_of_transitions().
|
inlinestaticprotected |
Definition at line 272 of file objects-visiting-inl.h.
References Code::cast(), Code::ClearTypeFeedbackCells(), v8::internal::code(), Code::CodeIterateBody(), and HeapObject::GetHeap().
Definition at line 167 of file objects-visiting-inl.h.
References Code::cast(), v8::internal::code(), Code::GetObjectFromEntryAddress(), Heap::mark_compact_collector(), and MarkCompactCollector::RecordCodeEntrySlot().
|
inlinestatic |
Definition at line 209 of file objects-visiting-inl.h.
References ASSERT, IC::Clear(), Serializer::enabled(), Heap::flush_monomorphic_ics(), Code::GetCodeFromTargetAddress(), Heap::global_ic_age(), Code::ic_age(), Code::ic_state(), Code::is_inline_cache_stub(), Heap::mark_compact_collector(), v8::internal::MEGAMORPHIC, and MarkCompactCollector::RecordRelocSlot().
|
inlinestatic |
Definition at line 196 of file objects-visiting-inl.h.
References ASSERT, Code::GetCodeFromTargetAddress(), Heap::mark_compact_collector(), and MarkCompactCollector::RecordRelocSlot().
|
inlinestatic |
Definition at line 176 of file objects-visiting-inl.h.
References ASSERT, HeapObject::cast(), Heap::mark_compact_collector(), and MarkCompactCollector::RecordRelocSlot().
|
inlinestatic |
Definition at line 394 of file objects-visiting.h.
|
inlinestatic |
Definition at line 187 of file objects-visiting-inl.h.
References ASSERT.
|
inlinestaticprotected |
Definition at line 311 of file objects-visiting-inl.h.
References CodeFlusher::AddCandidate(), JSFunction::cast(), MarkCompactCollector::code_flusher(), HeapObject::GetHeap(), MarkCompactCollector::is_code_flushing_enabled(), HeapObject::map(), and Heap::mark_compact_collector().
|
staticprotected |
Definition at line 565 of file objects-visiting-inl.h.
References HeapObject::address(), JSFunction::kCodeEntryOffset, JSFunction::kNonWeakFieldsEndOffset, v8::internal::kPointerSize, JSObject::kPropertiesOffset, JSFunction::kPrototypeOrInitialMapOffset, HeapObject::RawField(), and v8::internal::STATIC_ASSERT().
|
staticprotected |
Definition at line 586 of file objects-visiting-inl.h.
References JSFunction::kCodeEntryOffset, JSFunction::kNonWeakFieldsEndOffset, v8::internal::kPointerSize, JSObject::kPropertiesOffset, JSFunction::kPrototypeOrInitialMapOffset, HeapObject::RawField(), and v8::internal::STATIC_ASSERT().
|
inlinestaticprotected |
Definition at line 349 of file objects-visiting-inl.h.
References HeapObject::GetHeap(), Map::inobject_properties(), v8::internal::kPointerSize, JSObject::kPropertiesOffset, JSRegExp::kSize, and HeapObject::RawField().
|
inlinestaticprotected |
Definition at line 246 of file objects-visiting-inl.h.
References Map::cast(), Map::ClearCodeCache(), v8::internal::FIRST_JS_RECEIVER_TYPE, HeapObject::GetHeap(), Map::instance_type(), Map::kPointerFieldsBeginOffset, Map::kPointerFieldsEndOffset, v8::internal::LAST_JS_RECEIVER_TYPE, v8::internal::LAST_TYPE, HeapObject::RawField(), and v8::internal::STATIC_ASSERT().
|
inlinestatic |
Definition at line 228 of file objects-visiting-inl.h.
References Context::FIRST_WEAK_SLOT, HeapObject::GetHeap(), Heap::mark_compact_collector(), Context::NATIVE_CONTEXT_SLOTS, FixedArray::OffsetOfElementAt(), and HeapObject::RawField().
|
inlinestatic |
Definition at line 395 of file objects-visiting.h.
|
inlinestaticprotected |
Definition at line 284 of file objects-visiting-inl.h.
References CodeFlusher::AddCandidate(), SharedFunctionInfo::cast(), MarkCompactCollector::code_flusher(), HeapObject::GetHeap(), Heap::global_ic_age(), SharedFunctionInfo::ic_age(), MarkCompactCollector::is_code_flushing_enabled(), Heap::mark_compact_collector(), and SharedFunctionInfo::ResetForNewContext().
|
staticprotected |
Definition at line 527 of file objects-visiting-inl.h.
References FixedBodyDescriptor< start_offset, end_offset, size >::kEndOffset, FixedBodyDescriptor< start_offset, end_offset, size >::kStartOffset, and HeapObject::RawField().
|
staticprotected |
Definition at line 541 of file objects-visiting-inl.h.
References SharedFunctionInfo::kCodeOffset, FixedBodyDescriptor< start_offset, end_offset, size >::kEndOffset, SharedFunctionInfo::kNameOffset, SharedFunctionInfo::kOptimizedCodeMapOffset, v8::internal::kPointerSize, HeapObject::RawField(), and v8::internal::STATIC_ASSERT().
|
staticprotected |
Definition at line 448 of file objects-visiting.h.
Referenced by StaticMarkingVisitor< MarkCompactMarkingVisitor >::IterateBody().