![]() |
v8
3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
|
#include <contexts.h>
Static Public Member Functions | |
static Context * | cast (Object *context) |
static int | SlotOffset (int index) |
![]() | |
static int | SizeFor (int length) |
static int | OffsetOfElementAt (int index) |
static FixedArray * | cast (Object *obj) |
![]() | |
static FixedArrayBase * | cast (Object *object) |
![]() | |
static HeapObject * | FromAddress (Address address) |
static Object ** | RawField (HeapObject *obj, int offset) |
static HeapObject * | cast (Object *obj) |
![]() | |
static Handle< Object > | GetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< String > key, PropertyAttributes *attributes) |
static Handle< Object > | GetElement (Handle< Object > object, uint32_t index) |
static Object * | cast (Object *value) |
Static Public Attributes | |
static const int | kSize = kHeaderSize + GLOBAL_CONTEXT_SLOTS * kPointerSize |
![]() | |
static const int | kMaxSize = 128 * MB * kPointerSize |
static const int | kMaxLength = (kMaxSize - kHeaderSize) / kPointerSize |
![]() | |
static const int | kLengthOffset = HeapObject::kHeaderSize |
static const int | kHeaderSize = kLengthOffset + kPointerSize |
![]() | |
static const int | kMapOffset = Object::kHeaderSize |
static const int | kHeaderSize = kMapOffset + kPointerSize |
![]() | |
static const int | kHeaderSize = 0 |
Additional Inherited Members | |
![]() | |
void | IteratePointers (ObjectVisitor *v, int start, int end) |
void | IteratePointer (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 204 of file contexts.h.
typedef FixedBodyDescriptor< kHeaderSize, kHeaderSize + FIRST_WEAK_SLOT * kPointerSize, kSize> MarkCompactBodyDescriptor |
Definition at line 421 of file contexts.h.
typedef FixedBodyDescriptor< kHeaderSize, kSize, kSize> ScavengeBodyDescriptor |
Definition at line 416 of file contexts.h.
anonymous enum |
Definition at line 213 of file contexts.h.
void AddOptimizedFunction | ( | JSFunction * | function | ) |
Definition at line 243 of file contexts.cc.
References ASSERT, Context::cast(), JSFunction::cast(), CHECK, FixedArray::get(), HeapObject::GetHeap(), Heap::global_contexts_list(), Context::NEXT_CONTEXT_LINK, Context::OPTIMIZED_FUNCTIONS_LIST, and FixedArray::set().
JSBuiltinsObject * builtins | ( | ) |
Definition at line 47 of file contexts.cc.
References ASSERT, JSGlobalObject::cast(), JSBuiltinsObject::cast(), and Context::global().
Definition at line 207 of file contexts.h.
References ASSERT.
Referenced by Context::AddOptimizedFunction(), Heap::ClearJSFunctionResultCaches(), Heap::ClearNormalizedMapCaches(), JSFunction::context(), Isolate::GetCallingGlobalContext(), NonStrictArgumentsElementsAccessor::GetImpl(), Context::global_context(), JSFunction::GlobalContextFromLiterals(), IncrementalMarking::Hurry(), Snapshot::NewContextFromSnapshot(), JavaScriptFrame::Print(), v8::internal::RUNTIME_FUNCTION(), JSObject::SetDictionaryElement(), JSObject::SetElement(), IncrementalMarking::Step(), Deoptimizer::VisitAllOptimizedFunctions(), and GlobalObjectsEnumerator::VisitPointers().
void ClearOptimizedFunctions | ( | ) |
Definition at line 301 of file contexts.cc.
References HeapObject::GetHeap(), Context::OPTIMIZED_FUNCTIONS_LIST, and FixedArray::set().
Referenced by DeoptimizingVisitor::LeaveContext().
|
inline |
Definition at line 301 of file contexts.h.
References JSFunction::cast(), and Context::CLOSURE_INDEX.
Referenced by Context::declaration_context(), Scope::DeserializeScopeChain(), Context::global_context(), CompilationCacheTable::LookupEval(), and CompilationCacheTable::PutEval().
Context * declaration_context | ( | ) |
Definition at line 37 of file contexts.cc.
References ASSERT, Context::closure(), Context::IsFunctionContext(), and Context::previous().
|
inline |
Definition at line 312 of file contexts.h.
References Context::EXTENSION_INDEX.
Referenced by Scope::DeserializeScopeChain(), Context::has_extension(), JSObject::ReferencesObject(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 319 of file contexts.h.
References ASSERT, and Context::GLOBAL_INDEX.
Referenced by Heap::AllocateBlockContext(), Heap::AllocateCatchContext(), Heap::AllocateModuleContext(), Heap::AllocateWithContext(), Context::builtins(), Isolate::global(), Context::global_context(), and v8::internal::RUNTIME_FUNCTION().
Context * global_context | ( | ) |
Definition at line 58 of file contexts.cc.
References ASSERT, Context::cast(), JSFunction::cast(), Context::closure(), JSFunction::context(), and Context::global().
Referenced by JSObject::AddConstantFunctionProperty(), JSObject::AddFastProperty(), Heap::AllocateArgumentsObject(), Heap::AllocateFunctionPrototype(), v8::internal::BUILTIN(), JSObject::ConvertDescriptorToFieldAndMapTransition(), Runtime::CreateArrayLiteralBoilerplate(), Isolate::GetCallingGlobalContext(), JSObject::GetElementsTransitionMap(), JSObject::GetElementsTransitionMapSlow(), Object::GetElementWithReceiver(), v8::internal::GetKeysInFixedArrayFor(), Object::GetPrototype(), Context::global_proxy(), Context::has_out_of_memory(), Object::Lookup(), Context::mark_out_of_memory(), JSObject::NormalizeProperties(), StringStream::PrintSecurityTokenIfChanged(), JSObject::ReferencesObject(), JSFunction::RemovePrototype(), Context::set_global_proxy(), JSFunction::SetPrototype(), and Object::ToObject().
JSObject * global_proxy | ( | ) |
Definition at line 78 of file contexts.cc.
References Context::global_context().
Referenced by Isolate::global_proxy(), Script::Run(), and GlobalObjectsEnumerator::VisitPointers().
|
inline |
Definition at line 311 of file contexts.h.
References Context::extension(), and v8::internal::NULL.
Referenced by JSObject::ReferencesObject(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 1415 of file isolate.h.
References Context::global_context().
|
inline |
Definition at line 351 of file contexts.h.
References HeapObject::GetHeap(), and HeapObject::map().
Referenced by Scope::DeserializeScopeChain().
|
inline |
Definition at line 343 of file contexts.h.
References HeapObject::GetHeap(), and HeapObject::map().
Referenced by Scope::DeserializeScopeChain(), and JSObject::ReferencesObject().
|
inline |
Definition at line 339 of file contexts.h.
References HeapObject::GetHeap(), and HeapObject::map().
Referenced by Context::declaration_context(), Scope::DeserializeScopeChain(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 355 of file contexts.h.
References HeapObject::GetHeap(), and HeapObject::map().
|
inline |
Definition at line 347 of file contexts.h.
References HeapObject::GetHeap(), and HeapObject::map().
Referenced by Scope::DeserializeScopeChain().
Handle< Object > Lookup | ( | Handle< String > | name, |
ContextLookupFlags | flags, | ||
int * | index, | ||
PropertyAttributes * | attributes, | ||
BindingFlags * | binding_flags | ||
) |
Definition at line 87 of file contexts.cc.
References ABSENT, ASSERT, JSObject::cast(), ScopeInfo::cast(), String::cast(), v8::internal::CONST, v8::internal::CONST_HARMONY, v8::internal::DYNAMIC, v8::internal::DYNAMIC_GLOBAL, v8::internal::DYNAMIC_LOCAL, v8::internal::FOLLOW_CONTEXT_CHAIN, v8::internal::FOLLOW_PROTOTYPE_CHAIN, HeapObject::GetIsolate(), v8::internal::IMMUTABLE_CHECK_INITIALIZED, v8::internal::IMMUTABLE_CHECK_INITIALIZED_HARMONY, v8::internal::IMMUTABLE_IS_INITIALIZED, v8::internal::IMMUTABLE_IS_INITIALIZED_HARMONY, v8::internal::INTERNAL, v8::internal::kNeedsInitialization, v8::internal::LET, Context::MIN_CONTEXT_SLOTS, v8::internal::MISSING_BINDING, v8::internal::MUTABLE_CHECK_INITIALIZED, v8::internal::MUTABLE_IS_INITIALIZED, NONE, Handle< T >::null(), v8::internal::PrintF(), READ_ONLY, v8::internal::TEMPORARY, Context::THROWN_OBJECT_INDEX, UNREACHABLE, and v8::internal::VAR.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 1421 of file isolate.h.
References Context::global_context(), and HEAP.
Referenced by Heap::AllocateConsString(), Heap::AllocateExternalStringFromAscii(), Heap::AllocateExternalStringFromTwoByte(), and Isolate::ReportPendingMessages().
Object * OptimizedFunctionsListHead | ( | ) |
Definition at line 295 of file contexts.cc.
References ASSERT, and Context::OPTIMIZED_FUNCTIONS_LIST.
Referenced by Deoptimizer::VisitAllOptimizedFunctionsForContext().
|
inline |
Definition at line 304 of file contexts.h.
References ASSERT.
Referenced by Context::declaration_context(), and Scope::DeserializeScopeChain().
void RemoveOptimizedFunction | ( | JSFunction * | function | ) |
Definition at line 271 of file contexts.cc.
References ASSERT, JSFunction::cast(), HeapObject::GetHeap(), v8::internal::NULL, Context::OPTIMIZED_FUNCTIONS_LIST, FixedArray::set(), and UNREACHABLE.
|
inline |
Definition at line 302 of file contexts.h.
References Context::CLOSURE_INDEX, and FixedArray::set().
Referenced by Heap::AllocateBlockContext(), Heap::AllocateCatchContext(), Heap::AllocateFunctionContext(), and Heap::AllocateWithContext().
|
inline |
Definition at line 313 of file contexts.h.
References Context::EXTENSION_INDEX, and FixedArray::set().
Referenced by Heap::AllocateBlockContext(), Heap::AllocateCatchContext(), Heap::AllocateFunctionContext(), Heap::AllocateModuleContext(), Heap::AllocateWithContext(), and v8::internal::RUNTIME_FUNCTION().
|
inline |
Definition at line 324 of file contexts.h.
References Context::GLOBAL_INDEX, and FixedArray::set().
Referenced by Heap::AllocateBlockContext(), Heap::AllocateCatchContext(), Heap::AllocateFunctionContext(), Heap::AllocateModuleContext(), and Heap::AllocateWithContext().
void set_global_proxy | ( | JSObject * | global | ) |
Definition at line 82 of file contexts.cc.
References Context::global_context().
|
inline |
Definition at line 309 of file contexts.h.
References Context::PREVIOUS_INDEX, and FixedArray::set().
Referenced by Heap::AllocateBlockContext(), Heap::AllocateCatchContext(), Heap::AllocateFunctionContext(), Heap::AllocateModuleContext(), and Heap::AllocateWithContext().
|
inlinestatic |
Definition at line 408 of file contexts.h.
References FixedArrayBase::kHeaderSize, v8::internal::kHeapObjectTag, and v8::internal::kPointerSize.
Referenced by v8::internal::ContextOperand().
|
static |
Definition at line 412 of file contexts.h.