v8
3.25.30(node0.11.13)
V8 is Google's open source JavaScript engine
|
#include <objects.h>
Data Structures | |
class | GroupStartIndexes |
Public Types | |
enum | DependencyGroup { kWeaklyEmbeddedGroup, kTransitionGroup, kPrototypeCheckGroup, kElementsCantBeAddedGroup, kPropertyCellChangedGroup, kAllocationSiteTenuringChangedGroup, kAllocationSiteTransitionChangedGroup, kGroupCount = kAllocationSiteTransitionChangedGroup + 1 } |
Public Types inherited from Object | |
enum | ValueType { OPTIMAL_REPRESENTATION, FORCE_TAGGED } |
Static Public Member Functions | |
static Handle< DependentCode > | Insert (Handle< DependentCode > entries, DependencyGroup group, Handle< Object > object) |
static DependentCode * | cast (Object *object) |
static DependentCode * | ForObject (Handle< HeapObject > object, DependencyGroup group) |
Static Public Member Functions inherited from FixedArray | |
static int | SizeFor (int length) |
static int | OffsetOfElementAt (int index) |
static FixedArray * | cast (Object *obj) |
Static Public Member Functions inherited from FixedArrayBase | |
static FixedArrayBase * | cast (Object *object) |
Static Public Member Functions inherited from HeapObject | |
static HeapObject * | FromAddress (Address address) |
static Object ** | RawField (HeapObject *obj, int offset) |
static void | UpdateMapCodeCache (Handle< HeapObject > object, Handle< Name > name, Handle< Code > code) |
static HeapObject * | cast (Object *obj) |
Static Public Member Functions inherited from Object | |
static MUST_USE_RESULT Handle < Object > | ToSmi (Isolate *isolate, Handle< Object > object) |
static Handle< Object > | GetPropertyWithReceiver (Handle< Object > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes) |
static Handle< Object > | GetProperty (Handle< Object > object, Handle< Name > key) |
static Handle< Object > | GetProperty (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< Object > | GetElement (Isolate *isolate, Handle< Object > object, uint32_t index) |
static Handle< Object > | GetElementNoExceptionThrown (Isolate *isolate, Handle< Object > object, uint32_t index) |
static Handle< Object > | GetElementWithReceiver (Isolate *isolate, Handle< Object > object, Handle< Object > receiver, uint32_t index) |
static Handle< Object > | GetOrCreateHash (Handle< Object > object, Isolate *isolate) |
static Object * | cast (Object *value) |
Additional Inherited Members | |
Static Public Attributes inherited from FixedArray | |
static const int | kMaxSize = 128 * MB * kPointerSize |
static const int | kMaxLength = (kMaxSize - kHeaderSize) / kPointerSize |
Static Public Attributes inherited from FixedArrayBase | |
static const int | kLengthOffset = HeapObject::kHeaderSize |
static const int | kHeaderSize = kLengthOffset + kPointerSize |
Static Public Attributes inherited from HeapObject | |
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 inherited from HeapObject | |
void | IteratePointers (ObjectVisitor *v, int start, int end) |
void | IteratePointer (ObjectVisitor *v, int offset) |
void | IterateNextCodeLink (ObjectVisitor *v, int offset) |
Static Protected Member Functions inherited from FixedArray | |
static void | NoWriteBarrierSet (FixedArray *array, int index, Object *value) |
static void | NoIncrementalWriteBarrierSet (FixedArray *array, int index, Object *value) |
enum DependencyGroup |
|
inlinestatic |
Referenced by Heap::AllocateMap(), AllocationSite::Initialize(), and Heap::LookupWeakObjectToCodeDependency().
|
inline |
Definition at line 4277 of file objects-inl.h.
References FixedArray::set_undefined().
Referenced by DependentCode::MarkCodeForDeoptimization(), and DependentCode::RemoveCompilationInfo().
|
inline |
Definition at line 4251 of file objects-inl.h.
References Code::cast().
Referenced by DependentCode::MarkCodeForDeoptimization().
|
inline |
Definition at line 4256 of file objects-inl.h.
References Foreign::cast(), and Foreign::foreign_address().
Referenced by DependentCode::MarkCodeForDeoptimization(), DependentCode::RemoveCompilationInfo(), and DependentCode::UpdateToFinishedCode().
bool Contains | ( | DependencyGroup | group, |
Code * | code | ||
) |
Definition at line 11643 of file objects.cc.
References DependentCode::GroupStartIndexes::at(), and DependentCode::object_at().
|
inline |
Definition at line 4282 of file objects-inl.h.
References FixedArray::set().
Referenced by DependentCode::MarkCodeForDeoptimization(), and DependentCode::RemoveCompilationInfo().
void DeoptimizeDependentCodeGroup | ( | Isolate * | isolate, |
DependentCode::DependencyGroup | group | ||
) |
Definition at line 11692 of file objects.cc.
References ASSERT, Deoptimizer::DeoptimizeMarkedCode(), and DependentCode::MarkCodeForDeoptimization().
|
static |
Definition at line 11527 of file objects.cc.
References Handle< T >::cast(), DependentCode::kAllocationSiteTenuringChangedGroup, DependentCode::kAllocationSiteTransitionChangedGroup, and DependentCode::kPropertyCellChangedGroup.
Referenced by CompilationInfo::CommitDependencies(), and CompilationInfo::RollbackDependencies().
|
static |
Definition at line 11540 of file objects.cc.
References DependentCode::GroupStartIndexes::at(), Handle< T >::cast(), Factory::CopySizeFixedArray(), DependentCode::kGroupCount, DependentCode::GroupStartIndexes::number_of_entries(), DependentCode::number_of_entries(), DependentCode::GroupStartIndexes::Recompute(), and v8::internal::TENURED.
Referenced by Map::AddDependentCode(), Map::AddDependentCompilationInfo(), AllocationSite::AddDependentCompilationInfo(), PropertyCell::AddDependentCompilationInfo(), and v8::internal::AddWeakObjectToCodeDependency().
|
inline |
Definition at line 4247 of file objects-inl.h.
Referenced by DependentCode::MarkCodeForDeoptimization(), DependentCode::RemoveCompilationInfo(), and DependentCode::UpdateToFinishedCode().
bool MarkCodeForDeoptimization | ( | Isolate * | isolate, |
DependentCode::DependencyGroup | group | ||
) |
Definition at line 11654 of file objects.cc.
References CompilationInfo::AbortDueToDependencyChange(), DependentCode::GroupStartIndexes::at(), DependentCode::clear_at(), DependentCode::code_at(), DependentCode::compilation_info_at(), DependentCode::copy(), DependentCode::is_code_at(), Code::marked_for_deoptimization(), DependentCode::GroupStartIndexes::number_of_entries(), Code::set_marked_for_deoptimization(), and DependentCode::set_number_of_entries().
Referenced by DependentCode::DeoptimizeDependentCodeGroup().
|
inline |
Definition at line 4236 of file objects-inl.h.
References Smi::cast(), FixedArrayBase::length(), and Smi::value().
Referenced by DependentCode::Insert(), and DependentCode::GroupStartIndexes::Recompute().
|
inline |
Definition at line 4267 of file objects-inl.h.
Referenced by DependentCode::Contains(), DependentCode::RemoveCompilationInfo(), and DependentCode::UpdateToFinishedCode().
void RemoveCompilationInfo | ( | DependentCode::DependencyGroup | group, |
CompilationInfo * | info | ||
) |
Definition at line 11605 of file objects.cc.
References ASSERT, DependentCode::GroupStartIndexes::at(), DependentCode::clear_at(), DependentCode::compilation_info_at(), DependentCode::copy(), DependentCode::is_code_at(), DependentCode::kGroupCount, DependentCode::GroupStartIndexes::number_of_entries(), DependentCode::object_at(), CompilationInfo::object_wrapper(), and DependentCode::set_number_of_entries().
Referenced by CompilationInfo::RollbackDependencies().
|
inline |
Definition at line 4242 of file objects-inl.h.
References Smi::FromInt(), and FixedArray::set().
Referenced by DependentCode::MarkCodeForDeoptimization(), and DependentCode::RemoveCompilationInfo().
|
inline |
Definition at line 4262 of file objects-inl.h.
References FixedArray::set().
Referenced by DependentCode::UpdateToFinishedCode().
|
inline |
Definition at line 4272 of file objects-inl.h.
References FixedArray::RawFieldOfElementAt().
void UpdateToFinishedCode | ( | DependencyGroup | group, |
CompilationInfo * | info, | ||
Code * | code | ||
) |
Definition at line 11581 of file objects.cc.
References ASSERT, DependentCode::GroupStartIndexes::at(), DependentCode::compilation_info_at(), DependentCode::is_code_at(), DependentCode::object_at(), CompilationInfo::object_wrapper(), and DependentCode::set_object_at().
Referenced by CompilationInfo::CommitDependencies().