![]() |
v8
3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
|
#include <isolate.h>
Data Structures | |
class | ExceptionScope |
class | PerIsolateThreadData |
Public Types | |
enum | AddressId { kIsolateAddressCount } |
Static Public Member Functions | |
static PerIsolateThreadData * | CurrentPerIsolateThreadData () |
static void | EnsureDefaultIsolate () |
static StackGuard * | GetDefaultIsolateStackGuard () |
static Thread::LocalStorageKey | isolate_key () |
static Thread::LocalStorageKey | thread_id_key () |
static Thread::LocalStorageKey | per_isolate_thread_data_key () |
static void | EnterDefaultIsolate () |
static Address | c_entry_fp (ThreadLocalTop *thread) |
static Address | handler (ThreadLocalTop *thread) |
static Address | js_entry_sp (ThreadLocalTop *thread) |
static int | ArchiveSpacePerThread () |
Static Public Attributes | |
static const char *const | kStackOverflowMessage |
static const int | kUC16AlphabetSize = 256 |
static const int | kBMMaxShift = 250 |
static const int | kPartialSnapshotCacheCapacity = 1400 |
static const int | kJSRegexpStaticOffsetsVectorSize = 128 |
Friends | |
struct | GlobalState |
struct | InitializeGlobalState |
class | ExecutionAccess |
class | IsolateInitializer |
class | ThreadManager |
class | Simulator |
class | StackGuard |
class | ThreadId |
class | TestMemoryAllocatorScope |
class | v8::Isolate |
class | v8::Locker |
class | v8::Unlocker |
~Isolate | ( | ) |
Definition at line 1605 of file isolate.cc.
References NULL, and TRACE_ISOLATE.
char * ArchiveThread | ( | char * | to | ) |
Definition at line 1346 of file isolate.cc.
References Isolate::clear_pending_exception(), Isolate::clear_pending_message(), Isolate::clear_scheduled_exception(), Isolate::current_vm_state(), RuntimeProfiler::IsEnabled(), RuntimeProfiler::IsolateExitedJS(), and Isolate::thread_local_top().
|
inline |
Definition at line 803 of file isolate.h.
Referenced by Heap::ClearJSFunctionResultCaches(), Heap::ClearNormalizedMapCaches(), Context::DetachGlobal(), Isolate::DoThrow(), ThreadManager::FreeThreadResources(), Heap::IterateStrongRoots(), Context::New(), Context::ReattachGlobal(), and ThreadManager::RestoreThread().
|
inline |
Definition at line 909 of file isolate.h.
Referenced by Heap::AllocateSharedFunctionInfo(), SharedFunctionInfo::AttachInitialMap(), RuntimeProfiler::AttemptOnStackReplacement(), SharedFunctionInfo::CompleteInobjectSlackTracking(), Factory::CreateApiFunction(), SharedFunctionInfo::DetachInitialMap(), JSFunction::is_compiled(), JSFunction::IsMarkedForLazyRecompilation(), Heap::IterateStrongRoots(), LoadIC::Load(), JSFunction::MarkForLazyRecompilation(), SharedFunctionInfo::StartInobjectSlackTracking(), StoreIC::Store(), and KeyedLoadIC::string_stub().
|
inlinestatic |
Definition at line 614 of file isolate.h.
Referenced by IC::IC(), Isolate::PrintStack(), and CallICBase::TryUpdateExtraICState().
Definition at line 530 of file isolate.cc.
References Isolate::CaptureCurrentStackTrace(), Isolate::factory(), and JSObject::SetHiddenProperty().
Handle< JSArray > CaptureCurrentStackTrace | ( | int | frame_limit, |
StackTrace::StackTraceOptions | options | ||
) |
Definition at line 542 of file isolate.cc.
References StackTraceFrameIterator::Advance(), ASSERT, Handle< T >::cast(), Smi::cast(), FixedArray::cast(), Script::cast(), CHECK_NOT_EMPTY_HANDLE, Script::COMPILATION_TYPE_EVAL, Isolate::factory(), Smi::FromInt(), v8::internal::GetProperty(), v8::internal::GetScriptLineNumber(), v8::internal::GetScriptWrapper(), StackTrace::kColumnOffset, StackTrace::kFunctionName, StackTrace::kIsConstructor, StackTrace::kIsEval, StackTrace::kLineNumber, Compiler::kMaxInliningLevels, StackTrace::kScriptName, StackTrace::kScriptNameOrSourceURL, Factory::LookupAsciiSymbol(), v8::internal::Max(), Factory::NewJSArray(), Factory::NewJSObject(), NONE, v8::internal::NULL, v8::internal::pc, JSObject::SetLocalPropertyIgnoreAttributes(), JavaScriptFrame::Summarize(), Execution::TryCall(), and v8::internal::type().
Referenced by Isolate::CaptureAndSetCurrentStackTraceFor(), StackTrace::CurrentStackTrace(), and Isolate::DoThrow().
|
inline |
Definition at line 571 of file isolate.h.
Referenced by Isolate::set_catcher().
|
inline |
Definition at line 548 of file isolate.h.
Referenced by Isolate::ArchiveThread(), Isolate::OptionalRescheduleException(), MessageHandler::ReportMessage(), Isolate::ScheduleThrow(), and TEST().
|
inline |
Definition at line 557 of file isolate.h.
References v8::internal::NULL.
Referenced by Isolate::ArchiveThread(), and Isolate::ReportPendingMessages().
|
inline |
Definition at line 602 of file isolate.h.
Referenced by Isolate::ArchiveThread(), Isolate::PromoteScheduledException(), and MessageHandler::ReportMessage().
|
inline |
Definition at line 810 of file isolate.h.
Referenced by MemoryAllocator::AllocateChunk(), Heap::CopyCode(), Heap::CreateCode(), MemoryAllocator::FreeMemory(), and Heap::SetUp().
|
inline |
Definition at line 812 of file isolate.h.
Referenced by Heap::CollectAllAvailableGarbage(), RegExpImpl::Compile(), Compiler::Compile(), Compiler::CompileEval(), and Heap::IterateStrongRoots().
|
inline |
void ComputeLocation | ( | MessageLocation * | target | ) |
Definition at line 990 of file isolate.cc.
References Script::cast(), JSFunction::cast(), and JavaScriptFrame::function().
Referenced by Isolate::DoThrow().
|
inline |
Definition at line 518 of file isolate.h.
Referenced by JSObject::AddConstantFunctionProperty(), JSObject::AddFastProperty(), Heap::AllocateArgumentsObject(), Heap::AllocateConsString(), Heap::AllocateExternalStringFromAscii(), Heap::AllocateExternalStringFromTwoByte(), JSObject::ConvertDescriptorToFieldAndMapTransition(), Runtime::CreateArrayLiteralBoilerplate(), Context::Enter(), Isolate::GetCallingGlobalContext(), JSObject::GetElementsTransitionMap(), JSObject::GetElementsTransitionMapSlow(), Object::GetElementWithReceiver(), v8::internal::GetKeysInFixedArrayFor(), Object::GetPrototype(), Isolate::global(), Isolate::global_proxy(), Isolate::MayIndexedAccess(), Isolate::MayNamedAccess(), JSObject::NormalizeProperties(), JSObject::ReferencesObject(), Isolate::ReportFailedAccessCheck(), Isolate::ReportPendingMessages(), Isolate::RestoreThread(), Script::Run(), Isolate::set_context(), JSFunction::SetPrototype(), and Object::ToObject().
|
inline |
Definition at line 1027 of file isolate.h.
Referenced by MarkCompactCollector::Prepare(), and Isolate::set_context_exit_happened().
|
inline |
Definition at line 838 of file isolate.h.
Referenced by ScopeInfo::ContextSlotIndex().
|
inline |
Definition at line 869 of file isolate.h.
Referenced by ContextSwitcher::StartPreemption(), and ContextSwitcher::StopPreemption().
|
inline |
Definition at line 804 of file isolate.h.
References ASSERT, and v8::internal::NULL.
Referenced by Zone::adjust_segment_bytes_allocated(), MemoryAllocator::AllocateChunk(), Heap::AllocateConsString(), Heap::AllocateRaw(), Heap::CollectGarbage(), MemoryAllocator::CommitBlock(), StoreBuffer::Compact(), Compiler::Compile(), Compiler::CompileEval(), Compiler::CompileLazy(), KeyedLoadIC::ComputePolymorphicStub(), KeyedStoreIC::ComputePolymorphicStub(), GlobalHandles::Create(), GlobalHandles::Destroy(), JSObject::EnsureWritableFastElements(), MemoryAllocator::FreeMemory(), Heap::GarbageCollectionEpilogue(), NormalizedMapCache::Get(), InnerPointerToCodeCache::GetCacheEntry(), v8::internal::GetEnumPropertyKeys(), v8::internal::GetKeysFor(), v8::internal::GetScriptWrapper(), Execution::HandleStackGuardInterrupt(), Heap::IdleNotification(), CompilationCacheScript::Lookup(), CompilationCacheEval::Lookup(), CompilationCacheRegExp::Lookup(), FullCodeGenerator::MakeCode(), CodeGenerator::MakeCodeEpilogue(), JSObject::NormalizeElements(), JSObject::NormalizeProperties(), Heap::NumberToString(), Runtime::PerformGC(), v8::internal::RUNTIME_FUNCTION(), TEST(), MemoryAllocator::UncommitBlock(), and JSObject::UpdateMapCodeCache().
|
inline |
Definition at line 991 of file isolate.h.
Referenced by ProfilerEventsProcessor::AddCurrentStack(), Isolate::ArchiveThread(), Isolate::RestoreThread(), and SamplerThread::SampleContext().
|
inlinestatic |
Definition at line 431 of file isolate.h.
References Thread::GetThreadLocal().
Referenced by Isolate::EnterDefaultIsolate(), and V8::Initialize().
|
inline |
Definition at line 1038 of file isolate.h.
Referenced by Date::DateTimeConfigurationChangeNotification(), and Isolate::set_date_cache().
|
inline |
Definition at line 62 of file isolate-inl.h.
Referenced by RuntimeProfiler::AttemptOnStackReplacement().
|
inline |
Definition at line 823 of file isolate.h.
Referenced by Deoptimizer::DeoptimizeFunction(), Deoptimizer::GetDeoptimizedCodeCount(), Deoptimizer::Grab(), Heap::IterateStrongRoots(), and Deoptimizer::New().
|
inline |
Definition at line 842 of file isolate.h.
Referenced by Map::LookupInDescriptors().
void DoThrow | ( | Object * | exception, |
MessageLocation * | location | ||
) |
Definition at line 1057 of file isolate.cc.
References ASSERT, Isolate::bootstrapper(), Isolate::CaptureCurrentStackTrace(), JSObject::cast(), String::cast(), JSArray::cast(), Isolate::ComputeLocation(), MessageLocation::end_pos(), JSObject::GetHiddenProperty(), v8::internal::GetScriptLineNumberSafe(), Isolate::has_pending_exception(), Isolate::heap(), Isolate::is_catchable_by_javascript(), Handle< T >::is_null(), Bootstrapper::IsActive(), MessageHandler::MakeMessageObject(), v8::internal::NULL, OS::PrintError(), MessageLocation::script(), Isolate::set_pending_exception(), Isolate::ShouldReportException(), Isolate::StackTraceString(), MessageLocation::start_pos(), Isolate::thread_local_top(), ToCString(), and Isolate::try_catch_handler().
Referenced by Isolate::StackOverflow(), Isolate::TerminateExecution(), and Isolate::Throw().
|
static |
Definition at line 363 of file isolate.cc.
References Thread::CreateThreadLocalKey(), Thread::GetThreadLocal(), v8::internal::NULL, and Thread::SetThreadLocal().
Referenced by V8::AddCallCompletedCallback(), Isolate::EnterDefaultIsolate(), Isolate::GetDefaultIsolateStackGuard(), Context::New(), V8::RemoveCallCompletedCallback(), and StaticInitializer::StaticInitializer().
|
static |
Definition at line 399 of file isolate.cc.
References ASSERT, Isolate::CurrentPerIsolateThreadData(), Isolate::EnsureDefaultIsolate(), Isolate::PerIsolateThreadData::isolate(), and v8::internal::NULL.
Referenced by V8::Initialize(), and Locker::Locker().
|
inline |
Definition at line 984 of file isolate.h.
Referenced by StackTracer::Trace().
|
inline |
Definition at line 977 of file isolate.h.
Referenced by V8::AddMessageListener(), Scope::AllocateNonParameterLocal(), Scope::AllocateParameterLocals(), RegExpImpl::AtomExec(), v8::internal::CalculateLineEnds(), JSProxy::CallTrap(), Isolate::CaptureAndSetCurrentStackTraceFor(), Isolate::CaptureCurrentStackTrace(), Execution::CharAt(), RegExpImpl::Compile(), Script::Compile(), CompiledReplacement::Compile(), Compiler::CompileEval(), KeyedIC::ComputeStub(), String::Concat(), Runtime::CreateArrayLiteralBoilerplate(), Date::DateTimeConfigurationChangeNotification(), DictionaryElementsAccessor::DeleteCommon(), JSProxy::DeleteElementWithHandler(), JSObject::DeleteProperty(), JSProxy::DeletePropertyWithHandler(), String::Empty(), Exception::Error(), StubCache::factory(), v8::False(), JSProxy::Fix(), Accessors::FunctionGetArguments(), JSProxy::GetElementAttributeWithHandler(), v8::internal::GetEnumPropertyKeys(), CpuProfileNode::GetFunctionName(), HeapGraphNode::GetHeapValue(), v8::internal::GetKeysFor(), v8::internal::GetKeysInFixedArrayFor(), HeapGraphEdge::GetName(), HeapGraphNode::GetName(), Runtime::GetObjectProperty(), Object::GetOwnPropertyNames(), v8::internal::GetProperty(), JSProxy::GetPropertyAttributeWithHandler(), Object::GetPropertyNames(), JSObject::GetPropertyWithCallback(), CpuProfileNode::GetScriptResourceName(), v8::internal::GetScriptWrapper(), SharedFunctionInfo::GetSourceCode(), Execution::GetStackTraceLine(), ThisNamedPropertyAssignmentFinder::GetThisPropertyAssignments(), CpuProfile::GetTitle(), HeapSnapshot::GetTitle(), Scope::HasArgumentsParameter(), Scope::Initialize(), v8::internal::InitScriptLineEnds(), RegExpImpl::IrregexpExec(), KeyedCallIC::LoadFunction(), PolymorphicCodeCache::Lookup(), CodeGenerator::MakeCodeEpilogue(), Deoptimizer::MaterializeHeapNumbers(), TypeFeedbackCells::MegamorphicSentinel(), Bootstrapper::NativesSourceLookup(), NeanderObject::NeanderObject(), String::New(), Number::New(), Integer::New(), Object::New(), Array::New(), NumberObject::New(), BooleanObject::New(), StringObject::New(), FunctionTemplate::New(), Signature::New(), TypeSwitch::New(), v8::NewExternalAsciiStringHandle(), v8::NewExternalStringHandle(), Integer::NewFromUnsigned(), String::NewSymbol(), String::NewUndetectable(), v8::Null(), JSObject::PreventExtensions(), Isolate::PrintCurrentStackTrace(), Exception::RangeError(), IC::ReferenceError(), Exception::ReferenceError(), V8::RemoveMessageListeners(), Script::Run(), v8::internal::RUNTIME_FUNCTION(), ObjectTemplate::SetAccessCheckCallbacks(), FunctionTemplate::SetCallHandler(), JSObject::SetDictionaryElement(), JSObject::SetElement(), Runtime::SetObjectProperty(), Object::SetPointerInInternalField(), JSObject::SetPropertyForResult(), JSProxy::SetPropertyViaPrototypesWithHandler(), JSObject::SetPropertyWithCallback(), Isolate::StackOverflow(), Isolate::StackTraceString(), Runtime::StringReplaceOneCharWithString(), Exception::SyntaxError(), V8HeapExplorer::TagGlobalObjects(), TEST(), ArrayConcatVisitor::ToArray(), Value::ToArrayIndex(), ReplacementStringBuilder::ToString(), v8::True(), Object::TurnOnAccessCheck(), IC::TypeError(), Exception::TypeError(), v8::Undefined(), TypeFeedbackCells::UninitializedSentinel(), and ArrayConcatVisitor::visit().
Isolate::PerIsolateThreadData * FindPerThreadDataForThisThread | ( | ) |
Definition at line 352 of file isolate.cc.
References ThreadId::Current(), and v8::internal::NULL.
Referenced by ThreadManager::IsArchived(), and ThreadManager::RestoreThread().
|
inline |
Definition at line 651 of file isolate.h.
Referenced by ThreadManager::FreeThreadResources().
Address get_address_from_id | ( | Isolate::AddressId | id | ) |
Definition at line 417 of file isolate.cc.
Definition at line 1324 of file isolate.cc.
References Context::cast(), StandardFrame::context(), Isolate::context(), and Context::global_context().
Referenced by Context::GetCalling().
|
static |
Definition at line 393 of file isolate.cc.
References Isolate::EnsureDefaultIsolate(), and Isolate::stack_guard().
Referenced by V8::TerminateExecution().
|
inline |
Definition at line 637 of file isolate.h.
References Isolate::context(), and Context::global().
Referenced by Isolate::global_context().
Definition at line 1318 of file isolate.cc.
References Isolate::global(), and Isolate::thread_local_top().
Referenced by Script::Compile(), Context::GetCurrent(), Execution::InstantiateFunction(), and Script::Run().
|
inline |
Definition at line 865 of file isolate.h.
Referenced by V8::AddImplicitReferences(), V8::AddObjectGroup(), Heap::GarbageCollectionEpilogue(), HeapProfiler::GetPersistentHandleCount(), v8::internal::GetScriptWrapper(), TokenEnumerator::GetTokenId(), Heap::IterateStrongRoots(), Heap::RecordStats(), StartupSerializer::SerializeStrongReferences(), V8HeapExplorer::TagGlobalObjects(), Heap::TearDown(), and TokenEnumerator::~TokenEnumerator().
|
inline |
Definition at line 642 of file isolate.h.
References Isolate::context(), and Context::global_proxy().
|
inline |
Definition at line 846 of file isolate.h.
Referenced by HandleScope::CloseAndEscape(), HandleScope::CreateHandle(), HandleScope::DeleteExtensions(), HandleScope::HandleScope(), and HandleScope::NumberOfHandles().
|
inline |
Definition at line 849 of file isolate.h.
References ASSERT.
Referenced by HandleScope::DeleteExtensions(), Deserializer::Deserialize(), Context::Enter(), Context::Exit(), V8::FireCallCompletedCallback(), ThreadManager::FreeThreadResources(), Context::GetEntered(), Heap::IterateStrongRoots(), HandleScope::NumberOfHandles(), ThreadManager::RestoreThread(), and StartupSerializer::SerializeStrongReferences().
|
inlinestatic |
Definition at line 617 of file isolate.h.
Referenced by Isolate::IsExternallyCaught(), and Isolate::ShouldReportException().
|
inline |
Definition at line 915 of file isolate.h.
Referenced by StartupSerializer::SerializeStrongReferences().
|
inline |
Definition at line 554 of file isolate.h.
Referenced by JSProxy::CallTrap(), Compiler::CompileLazy(), JSProxy::DeletePropertyWithHandler(), Isolate::DoThrow(), NativeRegExpMacroAssembler::Execute(), JSProxy::GetPropertyAttributeWithHandler(), JSProxy::GetPropertyWithHandler(), JSProxy::HasPropertyWithHandler(), RegExpImpl::IrregexpExec(), RegExpImpl::IrregexpExecRaw(), Isolate::is_out_of_memory(), Isolate::IsExternallyCaught(), FullCodeGenerator::MakeCode(), Isolate::OptionalRescheduleException(), Isolate::pending_exception(), Isolate::ReportPendingMessages(), JSProxy::SetPropertyViaPrototypesWithHandler(), JSProxy::SetPropertyWithHandler(), and TEST().
|
inline |
Definition at line 599 of file isolate.h.
Referenced by Isolate::is_out_of_memory(), MessageHandler::ReportMessage(), and Isolate::scheduled_exception().
|
inline |
Definition at line 820 of file isolate.h.
Referenced by JSObject::AddFastProperty(), V8::AddGCEpilogueCallback(), V8::AddGCPrologueCallback(), V8::AddMessageListener(), V8::AdjustAmountOfExternalAllocatedMemory(), CompilationSubCache::Age(), MemoryAllocator::AllocateChunk(), MemoryAllocator::AllocateLargePage(), MemoryAllocator::AllocatePage(), Context::AllowCodeGenerationFromStrings(), StackGuard::ArchiveStackGuard(), StackGuard::ClearThread(), CpuProfiler::CodeCreateEvent(), V8::ContextDisposedNotification(), v8::internal::Copy(), GlobalHandles::Create(), Runtime::CreateArrayLiteralBoilerplate(), JSObject::DefineAccessor(), DictionaryElementsAccessor::DeleteCommon(), JSObject::DeleteElement(), JSObject::DeleteProperty(), Deoptimizer::DeoptimizeFunction(), Deserializer::Deserialize(), Isolate::DoThrow(), JSObject::EnsureWritableFastElements(), StubCache::FindCallInitialize(), HashTable< Shape, Key >::FindEntry(), Runtime::ForceDeleteObjectProperty(), MemoryAllocator::Free(), Heap::FreeQueuedChunks(), Accessors::FunctionGetArguments(), InnerPointerToCodeCache::GcSafeFindCodeForInnerPointer(), v8::internal::GetKeysInFixedArrayFor(), JSObject::GetPropertyWithCallback(), Factory::GlobalConstantFor(), Execution::HandleStackGuardInterrupt(), StubCache::heap(), Factory::hidden_symbol(), GlobalHandles::IdentifyNewSpaceWeakIndependentHandles(), v8::internal::InitScriptLineEnds(), StackGuard::InitThread(), Isolate::is_catchable_by_javascript(), Value::IsBooleanObject(), Value::IsDate(), StringTracker::IsFreshUnusedString(), Value::IsNumberObject(), Value::IsStringObject(), CompilationSubCache::IterateFunctions(), KeyedLoadIC::Load(), v8::internal::LookupSingleCharacterStringFromCode(), V8::LowMemoryNotification(), String::MakeExternal(), Bootstrapper::NativesSourceLookup(), BooleanObject::New(), Context::New(), String::NewExternal(), Factory::NewFunctionFromSharedFunctionInfo(), Factory::NewScript(), JSObject::NormalizeElements(), Runtime::PerformGC(), GlobalHandles::PostGarbageCollectionProcessing(), JSObject::PreventExtensions(), StringStream::PrintSecurityTokenIfChanged(), ObjectLiteral::Property::Property(), StringTracker::RecordWrite(), IncrementalMarking::RecordWriteForEvacuationFromCode(), IncrementalMarking::RecordWriteFromCode(), V8::RemoveGCEpilogueCallback(), V8::RemoveGCPrologueCallback(), V8::RemoveMessageListeners(), Isolate::ReportPendingMessages(), StackGuard::RequestGC(), StackGuard::RequestRuntimeProfilerTick(), StackGuard::RestoreStackGuard(), v8::internal::RUNTIME_FUNCTION(), PartialSerializer::Serialize(), JSObject::SetDictionaryElement(), JSObject::SetElement(), V8::SetGlobalGCEpilogueCallback(), V8::SetGlobalGCPrologueCallback(), JSObject::SetPropertyWithInterceptor(), v8::SetResourceConstraints(), Builtins::SetUp(), JSDate::SetValue(), KeyedStoreIC::Store(), StoreBuffer::StoreBufferOverflow(), TEST(), v8::ThrowException(), Factory::ToBoolean(), JSObject::TransitionElementsKind(), RuntimeProfiler::UpdateSamplesAfterScavenge(), V8::VisitExternalResources(), and Serializer::VisitPointers().
bool Init | ( | Deserializer * | des | ) |
Definition at line 1741 of file isolate.cc.
References ASSERT, ASSIGN_ELEMENT, CHECK_EQ, Deserializer::Deserialize(), FOR_EACH_ISOLATE_ADDRESS_NAME, LOG, NULL, OFFSET_OF, Locker::StartPreemption(), and TRACE_ISOLATE.
Referenced by V8::Initialize().
void InitializeLoggingAndCounters | ( | ) |
Definition at line 1719 of file isolate.cc.
References NULL.
Referenced by Isolate::PrintStack(), and TEST().
|
inline |
Definition at line 437 of file isolate.h.
References ASSERT, Thread::GetExistingThreadLocal(), and v8::internal::NULL.
|
inline |
Definition at line 444 of file isolate.h.
References Thread::GetThreadLocal().
|
inline |
Definition at line 859 of file isolate.h.
Referenced by Heap::FindCodeObject(), and IncrementalMarking::RecordCodeTargetPatch().
|
inline |
|
inline |
Definition at line 608 of file isolate.h.
References Isolate::heap(), and Failure::OutOfMemoryException().
Referenced by Isolate::DoThrow(), Isolate::IsExternallyCaught(), and Isolate::ReThrow().
bool is_out_of_memory | ( | ) |
Definition at line 1301 of file isolate.cc.
References Failure::cast(), Isolate::has_pending_exception(), Isolate::has_scheduled_exception(), Failure::IsOutOfMemoryException(), Isolate::pending_exception(), and Isolate::scheduled_exception().
Referenced by Isolate::OptionalRescheduleException().
|
inline |
Definition at line 52 of file isolate-inl.h.
References v8::internal::NoBarrier_Load().
|
inline |
Definition at line 467 of file isolate.h.
Referenced by V8::Dispose(), Locker::Locker(), Serializer::Serializer(), V8::TearDown(), Unlocker::Unlocker(), Locker::~Locker(), and Unlocker::~Unlocker().
bool IsExternallyCaught | ( | ) |
Definition at line 1161 of file isolate.cc.
References IC::address(), ASSERT, Isolate::handler(), Isolate::has_pending_exception(), Isolate::is_catchable_by_javascript(), v8::internal::NULL, Isolate::pending_exception(), Isolate::thread_local_top(), and Isolate::try_catch_handler().
|
inline |
Definition at line 457 of file isolate.h.
Referenced by V8::ContextDisposedNotification(), SamplerThread::DoCpuProfile(), SamplerThread::DoRuntimeProfile(), SignalSender::DoRuntimeProfile(), Context::Exit(), V8::IdleNotification(), V8::Initialize(), Locker::Locker(), V8::LowMemoryNotification(), Isolate::PrintStack(), v8::SetResourceConstraints(), V8::TerminateExecution(), and StackTracer::Trace().
|
inline |
Definition at line 460 of file isolate.h.
References v8::internal::NULL.
Referenced by Isolate::Dispose().
|
inlinestatic |
void Iterate | ( | ObjectVisitor * | v | ) |
Definition at line 475 of file isolate.cc.
References Isolate::thread_local_top().
Referenced by ThreadManager::Iterate(), Isolate::Iterate(), and Heap::IterateStrongRoots().
void Iterate | ( | ObjectVisitor * | v, |
ThreadLocalTop * | t | ||
) |
Definition at line 440 of file isolate.cc.
References v8::internal::NULL, and TRY_CATCH_FROM_ADDRESS.
char * Iterate | ( | ObjectVisitor * | v, |
char * | t | ||
) |
Definition at line 422 of file isolate.cc.
References Isolate::Iterate().
void IterateThread | ( | ThreadVisitor * | v | ) |
Definition at line 429 of file isolate.cc.
References Isolate::thread_local_top(), and ThreadVisitor::VisitThread().
Referenced by ThreadManager::IterateArchivedThreads().
void IterateThread | ( | ThreadVisitor * | v, |
char * | t | ||
) |
Definition at line 434 of file isolate.cc.
References ThreadVisitor::VisitThread().
|
inline |
Definition at line 646 of file isolate.h.
Referenced by Execution::CharAt(), Execution::ConfigureInstance(), Date::DateTimeConfigurationChangeNotification(), Execution::GetStackTraceLine(), Execution::InstantiateFunction(), Execution::InstantiateObject(), and Isolate::StackOverflow().
|
inlinestatic |
Definition at line 625 of file isolate.h.
Referenced by StackTracer::Trace().
|
inline |
Definition at line 881 of file isolate.h.
Referenced by CharacterRange::AddCaseEquivalents().
|
inline |
Definition at line 877 of file isolate.h.
Referenced by CharacterRange::AddCaseEquivalents().
|
inline |
|
inline |
Definition at line 813 of file isolate.h.
References ASSERT, and v8::internal::NULL.
Referenced by V8::EnableSlidingStateWindow(), V8::IsProfilerPaused(), V8::PauseProfiler(), V8::ResumeProfiler(), RuntimeProfiler::SetUp(), CodeGenerator::ShouldGenerateLog(), and SlidingStateWindow::SlidingStateWindow().
bool MayIndexedAccess | ( | JSObject * | receiver, |
uint32_t | index, | ||
v8::AccessType | type | ||
) |
Definition at line 851 of file isolate.cc.
References ASSERT, JSFunction::cast(), AccessCheckInfo::cast(), Isolate::context(), LOG, HeapObject::map(), Utils::ToLocal(), v8::internal::UNKNOWN, and v8::internal::YES.
Referenced by JSObject::DeleteElement(), Object::GetElementWithReceiver(), JSObject::HasElementWithReceiver(), JSObject::HasLocalElement(), JSObject::HasRealElementProperty(), and JSObject::SetElement().
bool MayNamedAccess | ( | JSObject * | receiver, |
Object * | key, | ||
v8::AccessType | type | ||
) |
Definition at line 801 of file isolate.cc.
References ASSERT, JSFunction::cast(), AccessCheckInfo::cast(), Isolate::context(), Heap::hidden_symbol(), LOG, HeapObject::map(), Utils::ToLocal(), v8::internal::UNKNOWN, and v8::internal::YES.
Referenced by JSObject::DefineAccessor(), JSObject::DeleteProperty(), v8::internal::GetKeysInFixedArrayFor(), Object::GetProperty(), JSObject::HasRealNamedCallbackProperty(), JSObject::HasRealNamedProperty(), JSObject::LookupAccessor(), JSObject::PreventExtensions(), v8::internal::RUNTIME_FUNCTION(), JSObject::SetLocalPropertyIgnoreAttributes(), and JSObject::SetPropertyForResult().
|
inline |
Definition at line 830 of file isolate.h.
Referenced by V8::AddMemoryAllocationCallback(), LargeObjectSpace::AllocateRaw(), RegExpCompiler::Assemble(), Heap::CommittedMemoryExecutable(), PagedSpace::Expand(), Heap::FreeQueuedChunks(), LargeObjectSpace::FreeUnmarkedObjects(), PagedSpace::PagedSpace(), Heap::PrintShortHeapStatistics(), Heap::RecordStats(), PagedSpace::ReleasePage(), V8::RemoveMemoryAllocationCallback(), Heap::SetUp(), NewSpace::SetUp(), SemiSpace::ShrinkTo(), Serializer::SpaceAreaSize(), Heap::TearDown(), PagedSpace::TearDown(), NewSpace::TearDown(), and LargeObjectSpace::TearDown().
|
inline |
|
inline |
|
inline |
Definition at line 893 of file isolate.h.
Referenced by String::ToCString(), and String::ToWideCString().
bool OptionalRescheduleException | ( | bool | is_bottom_call | ) |
Definition at line 1245 of file isolate.cc.
References ASSERT, Isolate::clear_pending_exception(), Isolate::has_pending_exception(), Isolate::is_out_of_memory(), v8::internal::NULL, Isolate::pending_exception(), Isolate::thread_local_top(), and Isolate::try_catch_handler_address().
|
inline |
Definition at line 535 of file isolate.h.
References ASSERT, and Isolate::has_pending_exception().
Referenced by Isolate::is_out_of_memory(), Isolate::IsExternallyCaught(), Isolate::OptionalRescheduleException(), and Isolate::ScheduleThrow().
|
static |
void PreallocatedStorageDelete | ( | void * | p | ) |
Definition at line 300 of file isolate.cc.
References ASSERT, and v8::internal::NULL.
void PreallocatedStorageInit | ( | size_t | size | ) |
Definition at line 245 of file isolate.cc.
References ASSERT.
void * PreallocatedStorageNew | ( | size_t | size | ) |
Definition at line 257 of file isolate.cc.
References ASSERT, v8::internal::kPointerSize, and v8::internal::NULL.
void PrintCurrentStackTrace | ( | FILE * | out | ) |
Definition at line 962 of file isolate.cc.
References StackTraceFrameIterator::Advance(), JSFunction::cast(), Isolate::factory(), Smi::FromInt(), JavaScriptFrame::function(), Execution::GetStackTraceLine(), and JavaScriptFrame::receiver().
Referenced by Message::PrintCurrentStackTrace().
void PrintStack | ( | StringStream * | accumulator | ) |
Definition at line 713 of file isolate.cc.
References StringStream::Add(), ASSERT, Isolate::c_entry_fp(), Isolate::IsInitialized(), StringStream::PrintMentionedObjectCache(), and Isolate::thread_local_top().
void PrintStack | ( | ) |
Definition at line 669 of file isolate.cc.
References StringStream::ClearMentionedObjectCache(), Isolate::InitializeLoggingAndCounters(), StringStream::Log(), v8::internal::NULL, StringStream::OutputToStdOut(), and OS::PrintError().
Referenced by Isolate::StackTraceString().
void PrintStackTrace | ( | FILE * | out, |
char * | thread_data | ||
) |
Failure * PromoteScheduledException | ( | ) |
Definition at line 954 of file isolate.cc.
References Isolate::clear_scheduled_exception(), Isolate::ReThrow(), and Isolate::scheduled_exception().
|
inline |
Definition at line 918 of file isolate.h.
Referenced by NativeRegExpMacroAssembler::CaseInsensitiveCompareUC16().
|
inline |
Definition at line 922 of file isolate.h.
Referenced by ThreadManager::FreeThreadResources(), NativeRegExpMacroAssembler::GrowStack(), and ThreadManager::RestoreThread().
void RegisterTryCatchHandler | ( | v8::TryCatch * | that | ) |
Definition at line 481 of file isolate.cc.
References SimulatorStack::RegisterCTryCatch(), and Isolate::thread_local_top().
Referenced by TryCatch::TryCatch().
void ReportFailedAccessCheck | ( | JSObject * | receiver, |
v8::AccessType | type | ||
) |
Definition at line 747 of file isolate.cc.
References ASSERT, JSFunction::cast(), AccessCheckInfo::cast(), Isolate::context(), HeapObject::map(), Isolate::thread_local_top(), and Utils::ToLocal().
Referenced by JSObject::DefineAccessor(), JSObject::DeleteElement(), JSObject::DeleteProperty(), Object::GetElementWithReceiver(), v8::internal::GetKeysInFixedArrayFor(), JSObject::GetPropertyAttributeWithFailedAccessCheck(), JSObject::GetPropertyWithFailedAccessCheck(), JSObject::HasElementWithReceiver(), JSObject::HasLocalElement(), JSObject::HasRealElementProperty(), JSObject::HasRealNamedCallbackProperty(), JSObject::HasRealNamedProperty(), JSObject::LookupAccessor(), JSObject::PreventExtensions(), v8::internal::RUNTIME_FUNCTION(), JSObject::SetElement(), and JSObject::SetPropertyWithFailedAccessCheck().
void ReportPendingMessages | ( | ) |
Definition at line 1203 of file isolate.cc.
References ASSERT, Isolate::clear_pending_message(), Isolate::context(), Isolate::has_pending_exception(), Isolate::heap(), Context::mark_out_of_memory(), v8::internal::NULL, Failure::OutOfMemoryException(), and MessageHandler::ReportMessage().
Referenced by Compiler::Compile().
char * RestoreThread | ( | char * | from | ) |
Definition at line 1360 of file isolate.cc.
References ASSERT, Isolate::context(), Isolate::current_vm_state(), RuntimeProfiler::IsEnabled(), RuntimeProfiler::IsolateEnteredJS(), v8::internal::NULL, and Isolate::thread_local_top().
Referenced by ThreadManager::RestoreThread().
Failure * ReThrow | ( | MaybeObject * | exception | ) |
Definition at line 924 of file isolate.cc.
References Failure::Exception(), Isolate::is_catchable_by_javascript(), v8::internal::NULL, Isolate::set_pending_exception(), Isolate::ShouldReportException(), Isolate::thread_local_top(), and Isolate::try_catch_handler().
Referenced by Isolate::PromoteScheduledException().
|
inline |
Definition at line 811 of file isolate.h.
Referenced by SamplerThread::DoRuntimeProfile(), SignalSender::DoRuntimeProfile(), Execution::HandleStackGuardInterrupt(), and Context::New().
|
inline |
|
inline |
Definition at line 595 of file isolate.h.
References ASSERT, and Isolate::has_scheduled_exception().
Referenced by Isolate::is_out_of_memory(), and Isolate::PromoteScheduledException().
void ScheduleThrow | ( | Object * | exception | ) |
Definition at line 944 of file isolate.cc.
References Isolate::clear_pending_exception(), Isolate::pending_exception(), Isolate::thread_local_top(), and Isolate::Throw().
Referenced by v8::ThrowException().
|
inline |
Definition at line 574 of file isolate.h.
References Isolate::catcher().
Referenced by Isolate::ExceptionScope::~ExceptionScope().
|
inline |
Definition at line 519 of file isolate.h.
References ASSERT, Isolate::context(), and v8::internal::NULL.
Referenced by Context::Enter(), Context::Exit(), Bootstrapper::InstallExtensions(), and BASE_EMBEDDED< Visitor >::~SaveContext().
|
inline |
Definition at line 1030 of file isolate.h.
References Isolate::context_exit_happened().
Referenced by Context::Exit().
|
inline |
Definition at line 871 of file isolate.h.
Referenced by ContextSwitcher::StartPreemption(), and ContextSwitcher::StopPreemption().
|
inline |
|
inline |
Definition at line 542 of file isolate.h.
Referenced by MessageHandler::ReportMessage().
|
inline |
Definition at line 691 of file isolate.h.
Referenced by V8::IgnoreOutOfMemoryException().
|
inline |
Definition at line 545 of file isolate.h.
Referenced by Isolate::DoThrow(), Isolate::ReThrow(), and Isolate::ExceptionScope::~ExceptionScope().
|
inline |
Definition at line 526 of file isolate.h.
Referenced by BASE_EMBEDDED< Visitor >::~SaveContext().
void SetCaptureStackTraceForUncaughtExceptions | ( | bool | capture, |
int | frame_limit, | ||
StackTrace::StackTraceOptions | options | ||
) |
Definition at line 1291 of file isolate.cc.
|
inline |
Definition at line 995 of file isolate.h.
References ASSERT, RuntimeProfiler::IsEnabled(), RuntimeProfiler::IsolateEnteredJS(), RuntimeProfiler::IsolateExitedJS(), and RuntimeProfiler::IsSomeIsolateInJS().
void SetFailedAccessCheckCallback | ( | v8::FailedAccessCheckCallback | callback | ) |
Definition at line 741 of file isolate.cc.
References Isolate::thread_local_top().
Referenced by V8::SetFailedAccessCheckCallbackFunction().
|
inline |
Definition at line 1023 of file isolate.h.
Referenced by BASE_EMBEDDED< Visitor >::LookupResult().
bool ShouldReportException | ( | bool * | can_be_caught_externally, |
bool | catchable_by_javascript | ||
) |
Definition at line 1008 of file isolate.cc.
References IC::address(), Isolate::handler(), v8::internal::NULL, Isolate::thread_local_top(), and Isolate::try_catch_handler().
Referenced by Isolate::DoThrow(), and Isolate::ReThrow().
|
inline |
Definition at line 819 of file isolate.h.
Referenced by IncrementalMarking::Abort(), IncrementalMarking::Finalize(), ThreadManager::FreeThreadResources(), Isolate::GetDefaultIsolateStackGuard(), Execution::HandleStackGuardInterrupt(), Locker::Locker(), IncrementalMarking::MarkingComplete(), RuntimeProfiler::NotifyTick(), ThreadManager::RestoreThread(), v8::SetResourceConstraints(), Heap::SetStackLimits(), and V8::TerminateExecution().
Failure * StackOverflow | ( | ) |
Definition at line 897 of file isolate.cc.
References Handle< T >::cast(), v8::internal::Copy(), Isolate::DoThrow(), Failure::Exception(), Isolate::factory(), v8::internal::GetProperty(), Isolate::js_builtins_object(), and v8::internal::NULL.
Referenced by Compiler::CompileLazy(), NativeRegExpMacroAssembler::Execute(), Execution::HandleStackGuardInterrupt(), and RegExpImpl::IrregexpExecRaw().
Definition at line 502 of file isolate.cc.
References OS::Abort(), StringStream::ClearMentionedObjectCache(), Isolate::factory(), v8::internal::NULL, StringStream::OutputToStdOut(), OS::PrintError(), Isolate::PrintStack(), and StringStream::ToString().
Referenced by Isolate::DoThrow().
StatsTable * stats_table | ( | ) |
Definition at line 1885 of file isolate.cc.
References NULL.
Referenced by CompilationCacheScript::Lookup(), V8::SetAddHistogramSampleFunction(), V8::SetCounterFunction(), V8::SetCreateHistogramFunction(), and TEST().
|
inline |
Definition at line 875 of file isolate.h.
Referenced by String::CanMakeExternal(), String::MakeExternal(), String::Write(), String::WriteAscii(), and String::WriteUtf8().
|
inline |
Definition at line 822 of file isolate.h.
Referenced by CallICBase::ComputeMonomorphicStub(), KeyedLoadIC::Load(), KeyedCallIC::LoadFunction(), and CallICBase::UpdateCaches().
void TearDown | ( | ) |
Definition at line 1533 of file isolate.cc.
References NULL, and TRACE_ISOLATE.
Referenced by Isolate::Dispose(), and V8::TearDown().
Failure * TerminateExecution | ( | ) |
Definition at line 912 of file isolate.cc.
References Isolate::DoThrow(), Failure::Exception(), and v8::internal::NULL.
Referenced by Execution::HandleStackGuardInterrupt(), and V8::TerminateExecution().
|
inline |
Definition at line 531 of file isolate.h.
Referenced by V8::GetCurrentThreadId(), and V8::TerminateExecution().
|
inlinestatic |
|
inline |
Definition at line 824 of file isolate.h.
Referenced by Isolate::ArchiveThread(), Isolate::DoThrow(), Isolate::global_context(), IC::IC(), Isolate::IsExternallyCaught(), Isolate::Iterate(), Isolate::IterateThread(), Isolate::OptionalRescheduleException(), Isolate::PrintStack(), Isolate::RegisterTryCatchHandler(), Isolate::ReportFailedAccessCheck(), Isolate::RestoreThread(), Isolate::ReThrow(), v8::internal::RUNTIME_FUNCTION(), Isolate::ScheduleThrow(), Isolate::SetFailedAccessCheckCallback(), Isolate::ShouldReportException(), StackTracer::Trace(), and Isolate::UnregisterTryCatchHandler().
|
inline |
Definition at line 867 of file isolate.h.
Referenced by Deserializer::Deserialize(), Locker::IsLocked(), Heap::IterateStrongRoots(), Locker::Locker(), V8::TerminateExecution(), Unlocker::Unlocker(), Locker::~Locker(), and Unlocker::~Unlocker().
Failure * Throw | ( | Object * | exception, |
MessageLocation * | location = NULL |
||
) |
Definition at line 918 of file isolate.cc.
References Isolate::DoThrow(), and Failure::Exception().
Referenced by JSObject::AddProperty(), JSProxy::CallTrap(), DictionaryElementsAccessor::DeleteCommon(), JSObject::DeleteProperty(), JSProxy::DeletePropertyWithHandler(), Runtime::GetObjectProperty(), JSProxy::GetPropertyAttributeWithHandler(), JSObject::GetPropertyWithCallback(), JSObject::PreventExtensions(), IC::ReferenceError(), Isolate::ScheduleThrow(), JSObject::SetDictionaryElement(), JSObject::SetElement(), Runtime::SetObjectProperty(), JSObject::SetPropertyForResult(), JSProxy::SetPropertyViaPrototypesWithHandler(), JSObject::SetPropertyWithCallback(), JSReceiver::SetPrototype(), Isolate::ThrowIllegalOperation(), and IC::TypeError().
Failure * ThrowIllegalOperation | ( | ) |
Definition at line 939 of file isolate.cc.
References Isolate::Throw().
Referenced by v8::internal::TransitionElements().
|
inline |
Definition at line 1034 of file isolate.h.
References OS::TimeCurrentMillis().
void TraceException | ( | bool | flag | ) |
Definition at line 1240 of file isolate.cc.
References v8::internal::flag.
|
inline |
Definition at line 826 of file isolate.h.
Referenced by Heap::GarbageCollectionPrologue().
|
inline |
Definition at line 562 of file isolate.h.
Referenced by Isolate::DoThrow(), Isolate::IsExternallyCaught(), Isolate::ReThrow(), and Isolate::ShouldReportException().
|
inline |
Definition at line 565 of file isolate.h.
Referenced by Isolate::OptionalRescheduleException().
|
inline |
Definition at line 855 of file isolate.h.
Referenced by JSObject::AddFastProperty(), Heap::AllocateStringFromUtf8Slow(), and String::IsEqualTo().
void UnregisterTryCatchHandler | ( | v8::TryCatch * | that | ) |
Definition at line 493 of file isolate.cc.
References ASSERT, v8::internal::NULL, Isolate::thread_local_top(), and SimulatorStack::UnregisterCTryCatch().
|
inline |
Definition at line 863 of file isolate.h.
Referenced by String::WriteAscii(), and String::WriteUtf8().
|
inline |
Definition at line 853 of file isolate.h.
Referenced by FullCodeGenerator::MakeCode(), and ParserApi::Parse().
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
static |
Definition at line 982 of file isolate.h.
Referenced by OffsetsVector::OffsetsVector(), and OffsetsVector::~OffsetsVector().
|
static |
Definition at line 980 of file isolate.h.
Referenced by Deserializer::Deserialize(), PartialSerializer::PartialSnapshotCacheIndex(), PartialSerializer::Serialize(), and StartupSerializer::SerializeWeakReferences().
|
static |
Definition at line 770 of file isolate.h.
Referenced by RegExpParser::Advance().