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

#include <isolate.h>

Data Structures

class  ExceptionScope
 
class  PerIsolateThreadData
 

Public Types

enum  AddressId { kIsolateAddressCount }
 

Public Member Functions

 ~Isolate ()
 
 INLINE (static Isolate *Current())
 
 INLINE (static Isolate *UncheckedCurrent())
 
void InitializeLoggingAndCounters ()
 
bool Init (Deserializer *des)
 
bool IsInitialized ()
 
bool IsInUse ()
 
void TearDown ()
 
bool IsDefaultIsolate () const
 
PerIsolateThreadDataFindPerThreadDataForThisThread ()
 
Mutexbreak_access ()
 
Mutexdebugger_access ()
 
Address get_address_from_id (AddressId id)
 
Contextcontext ()
 
void set_context (Context *context)
 
Context ** context_address ()
 
SaveContext * save_context ()
 
void set_save_context (SaveContext *save)
 
Mapempty_object_map ()
 
ThreadId thread_id ()
 
void set_thread_id (ThreadId id)
 
MaybeObject * pending_exception ()
 
bool external_caught_exception ()
 
void set_external_caught_exception (bool value)
 
void set_pending_exception (MaybeObject *exception)
 
void clear_pending_exception ()
 
MaybeObject ** pending_exception_address ()
 
bool has_pending_exception ()
 
void clear_pending_message ()
 
v8::TryCatchtry_catch_handler ()
 
Address try_catch_handler_address ()
 
bool * external_caught_exception_address ()
 
v8::TryCatchcatcher ()
 
void set_catcher (v8::TryCatch *catcher)
 
MaybeObject ** scheduled_exception_address ()
 
Address pending_message_obj_address ()
 
Address has_pending_message_address ()
 
Address pending_message_script_address ()
 
MaybeObject * scheduled_exception ()
 
bool has_scheduled_exception ()
 
void clear_scheduled_exception ()
 
bool IsExternallyCaught ()
 
bool is_catchable_by_javascript (MaybeObject *exception)
 
void PushToPartialSnapshotCache (Object *obj)
 
Addressc_entry_fp_address ()
 
Addresshandler_address ()
 
Addressjs_entry_sp_address ()
 
void * formal_count_address ()
 
Handle< GlobalObjectglobal_object ()
 
Objectglobal_proxy ()
 
Handle< JSBuiltinsObjectjs_builtins_object ()
 
void FreeThreadResources ()
 
bool OptionalRescheduleException (bool is_bottom_call)
 
void SetCaptureStackTraceForUncaughtExceptions (bool capture, int frame_limit, StackTrace::StackTraceOptions options)
 
bool is_out_of_memory ()
 
bool ignore_out_of_memory ()
 
void set_ignore_out_of_memory (bool value)
 
void PrintCurrentStackTrace (FILE *out)
 
void PrintStackTrace (FILE *out, char *thread_data)
 
void PrintStack (StringStream *accumulator)
 
void PrintStack ()
 
Handle< StringStackTraceString ()
 
 NO_INLINE (void PushStackTraceAndDie(unsigned int magic, Object *object, Map *map, unsigned int magic2))
 
Handle< JSArrayCaptureCurrentStackTrace (int frame_limit, StackTrace::StackTraceOptions options)
 
void CaptureAndSetCurrentStackTraceFor (Handle< JSObject > error_object)
 
bool MayNamedAccess (JSObject *receiver, Object *key, v8::AccessType type)
 
bool MayIndexedAccess (JSObject *receiver, uint32_t index, v8::AccessType type)
 
void SetFailedAccessCheckCallback (v8::FailedAccessCheckCallback callback)
 
void ReportFailedAccessCheck (JSObject *receiver, v8::AccessType type)
 
FailureThrow (Object *exception, MessageLocation *location=NULL)
 
FailureReThrow (MaybeObject *exception)
 
void ScheduleThrow (Object *exception)
 
void ReportPendingMessages ()
 
FailureThrowIllegalOperation ()
 
FailurePromoteScheduledException ()
 
void DoThrow (Object *exception, MessageLocation *location)
 
bool ShouldReportException (bool *can_be_caught_externally, bool catchable_by_javascript)
 
void ComputeLocation (MessageLocation *target)
 
void TraceException (bool flag)
 
FailureStackOverflow ()
 
FailureTerminateExecution ()
 
void Iterate (ObjectVisitor *v)
 
void Iterate (ObjectVisitor *v, ThreadLocalTop *t)
 
char * Iterate (ObjectVisitor *v, char *t)
 
void IterateThread (ThreadVisitor *v)
 
void IterateThread (ThreadVisitor *v, char *t)
 
Handle< Contextnative_context ()
 
Handle< Contextglobal_context ()
 
Handle< ContextGetCallingNativeContext ()
 
void RegisterTryCatchHandler (v8::TryCatch *that)
 
void UnregisterTryCatchHandler (v8::TryCatch *that)
 
char * ArchiveThread (char *to)
 
char * RestoreThread (char *from)
 
Bootstrapperbootstrapper ()
 
Counterscounters ()
 
CodeRangecode_range ()
 
RuntimeProfilerruntime_profiler ()
 
CompilationCachecompilation_cache ()
 
Loggerlogger ()
 
StackGuardstack_guard ()
 
Heapheap ()
 
StatsTablestats_table ()
 
StubCachestub_cache ()
 
DeoptimizerDatadeoptimizer_data ()
 
ThreadLocalTop * thread_local_top ()
 
TranscendentalCachetranscendental_cache () const
 
MemoryAllocatormemory_allocator ()
 
KeyedLookupCachekeyed_lookup_cache ()
 
ContextSlotCachecontext_slot_cache ()
 
DescriptorLookupCachedescriptor_lookup_cache ()
 
v8::ImplementationUtilities::HandleScopeDatahandle_scope_data ()
 
HandleScopeImplementerhandle_scope_implementer ()
 
Zoneruntime_zone ()
 
UnicodeCacheunicode_cache ()
 
InnerPointerToCodeCacheinner_pointer_to_code_cache ()
 
StringInputBufferwrite_input_buffer ()
 
GlobalHandlesglobal_handles ()
 
ThreadManagerthread_manager ()
 
ContextSwitchercontext_switcher ()
 
void set_context_switcher (ContextSwitcher *switcher)
 
StringTrackerstring_tracker ()
 
unibrow::Mapping
< unibrow::Ecma262UnCanonicalize > * 
jsregexp_uncanonicalize ()
 
unibrow::Mapping
< unibrow::CanonicalizationRange > * 
jsregexp_canonrange ()
 
StringInputBufferobjects_string_compare_buffer_a ()
 
StringInputBufferobjects_string_compare_buffer_b ()
 
StaticResource
< StringInputBuffer > * 
objects_string_input_buffer ()
 
RuntimeStateruntime_state ()
 
void set_fp_stubs_generated (bool value)
 
bool fp_stubs_generated ()
 
StaticResource
< SafeStringInputBuffer > * 
compiler_safe_string_input_buffer ()
 
Builtinsbuiltins ()
 
void NotifyExtensionInstalled ()
 
bool has_installed_extensions ()
 
unibrow::Mapping
< unibrow::Ecma262Canonicalize > * 
regexp_macro_assembler_canonicalize ()
 
RegExpStackregexp_stack ()
 
unibrow::Mapping
< unibrow::Ecma262Canonicalize > * 
interp_canonicalize_mapping ()
 
void * PreallocatedStorageNew (size_t size)
 
void PreallocatedStorageDelete (void *p)
 
void PreallocatedStorageInit (size_t size)
 
bool IsDebuggerActive ()
 
bool DebuggerHasBreakPoints ()
 
Factoryfactory ()
 
Address external_callback ()
 
void set_external_callback (Address callback)
 
StateTag current_vm_state ()
 
void SetCurrentVMState (StateTag state)
 
void SetData (void *data)
 
void * GetData ()
 
LookupResult * top_lookup_result ()
 
void SetTopLookupResult (LookupResult *top)
 
bool context_exit_happened ()
 
void set_context_exit_happened (bool context_exit_happened)
 
double time_millis_since_init ()
 
DateCachedate_cache ()
 
void set_date_cache (DateCache *date_cache)
 
void IterateDeferredHandles (ObjectVisitor *visitor)
 
void LinkDeferredHandles (DeferredHandles *deferred_handles)
 
void UnlinkDeferredHandles (DeferredHandles *deferred_handles)
 
OptimizingCompilerThreadoptimizing_compiler_thread ()
 

Static Public Member Functions

static PerIsolateThreadDataCurrentPerIsolateThreadData ()
 
static void EnsureDefaultIsolate ()
 
static StackGuardGetDefaultIsolateStackGuard ()
 
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 kJSRegexpStaticOffsetsVectorSize = 128
 

Friends

struct GlobalState
 
struct InitializeGlobalState
 
class ExecutionAccess
 
class HandleScopeImplementer
 
class IsolateInitializer
 
class OptimizingCompilerThread
 
class ThreadManager
 
class Simulator
 
class StackGuard
 
class ThreadId
 
class TestMemoryAllocatorScope
 
class v8::Isolate
 
class v8::Locker
 
class v8::Unlocker
 

Detailed Description

Definition at line 359 of file isolate.h.

Member Enumeration Documentation

enum AddressId
Enumerator
kIsolateAddressCount 

Definition at line 424 of file isolate.h.

Constructor & Destructor Documentation

~Isolate ( )

Definition at line 1667 of file isolate.cc.

References NULL, and TRACE_ISOLATE.

Member Function Documentation

static int ArchiveSpacePerThread ( )
inlinestatic

Definition at line 660 of file isolate.h.

Mutex* break_access ( )
inline

Definition at line 512 of file isolate.h.

static Address c_entry_fp ( ThreadLocalTop *  thread)
inlinestatic

Definition at line 624 of file isolate.h.

Referenced by IC::IC(), Isolate::PrintStack(), and CallICBase::TryUpdateExtraICState().

Address* c_entry_fp_address ( )
inline

Definition at line 629 of file isolate.h.

void CaptureAndSetCurrentStackTraceFor ( Handle< JSObject error_object)
v8::TryCatch* catcher ( )
inline

Definition at line 578 of file isolate.h.

Referenced by Isolate::set_catcher().

void clear_pending_exception ( )
inline
void clear_pending_message ( )
inline

Definition at line 564 of file isolate.h.

References v8::internal::NULL.

Referenced by Isolate::ArchiveThread(), and Isolate::ReportPendingMessages().

void clear_scheduled_exception ( )
inline
StaticResource<SafeStringInputBuffer>* compiler_safe_string_input_buffer ( )
inline

Definition at line 920 of file isolate.h.

void ComputeLocation ( MessageLocation target)

Definition at line 1017 of file isolate.cc.

References Script::cast(), JSFunction::cast(), and JavaScriptFrame::function().

Referenced by Isolate::DoThrow().

Context** context_address ( )
inline

Definition at line 525 of file isolate.h.

bool context_exit_happened ( )
inline

Definition at line 1039 of file isolate.h.

Referenced by Isolate::set_context_exit_happened().

ContextSlotCache* context_slot_cache ( )
inline

Definition at line 853 of file isolate.h.

Referenced by ScopeInfo::ContextSlotIndex().

ContextSwitcher* context_switcher ( )
inline

Definition at line 884 of file isolate.h.

Referenced by ContextSwitcher::StartPreemption(), and ContextSwitcher::StopPreemption().

static PerIsolateThreadData* CurrentPerIsolateThreadData ( )
inlinestatic

Definition at line 433 of file isolate.h.

References Thread::GetThreadLocal().

Referenced by Isolate::EnterDefaultIsolate(), and V8::Initialize().

DateCache* date_cache ( )
inline
Mutex* debugger_access ( )
inline

Definition at line 515 of file isolate.h.

bool DebuggerHasBreakPoints ( )
inline
DescriptorLookupCache* descriptor_lookup_cache ( )
inline

Definition at line 857 of file isolate.h.

Address external_callback ( )
inline

Definition at line 996 of file isolate.h.

Referenced by StackTracer::Trace().

bool external_caught_exception ( )
inline

Definition at line 546 of file isolate.h.

bool* external_caught_exception_address ( )
inline

Definition at line 575 of file isolate.h.

Factory* factory ( )
inline

Definition at line 992 of file isolate.h.

Referenced by V8::AddMessageListener(), Scope::AllocateModules(), Scope::AllocateNonParameterLocal(), Scope::AllocateParameterLocals(), Map::AppendCallbackDescriptors(), 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(), JSObject::DeleteElement(), JSProxy::DeleteElementWithHandler(), JSObject::DeleteProperty(), JSProxy::DeletePropertyWithHandler(), String::Empty(), Map::EnsureDescriptorSlack(), Exception::Error(), Context::ErrorMessageForCodeGenerationFromStrings(), 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::MaterializeHeapObjects(), 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(), Rewriter::Rewrite(), 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(), v8::internal::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().

void* formal_count_address ( )
inline

Definition at line 643 of file isolate.h.

bool fp_stubs_generated ( )
inline

Definition at line 918 of file isolate.h.

void FreeThreadResources ( )
inline

Definition at line 661 of file isolate.h.

Referenced by ThreadManager::FreeThreadResources().

Address get_address_from_id ( Isolate::AddressId  id)

Definition at line 417 of file isolate.cc.

Handle< Context > GetCallingNativeContext ( )
void* GetData ( )
inline

Definition at line 1030 of file isolate.h.

StackGuard * GetDefaultIsolateStackGuard ( )
static

Definition at line 393 of file isolate.cc.

References Isolate::EnsureDefaultIsolate(), and Isolate::stack_guard().

Referenced by V8::TerminateExecution().

Handle< Context > global_context ( )

Definition at line 1351 of file isolate.cc.

References Isolate::thread_local_top().

Referenced by Script::Compile(), Script::New(), and Script::Run().

Handle<GlobalObject> global_object ( )
inline

Definition at line 647 of file isolate.h.

References Isolate::context(), and Context::global_object().

Object* global_proxy ( )
inline

Definition at line 652 of file isolate.h.

References Isolate::context(), and Context::global_proxy().

static Address handler ( ThreadLocalTop *  thread)
inlinestatic

Definition at line 627 of file isolate.h.

Referenced by Isolate::IsExternallyCaught(), and Isolate::ShouldReportException().

Address* handler_address ( )
inline

Definition at line 632 of file isolate.h.

bool has_installed_extensions ( )
inline

Definition at line 930 of file isolate.h.

Referenced by StartupSerializer::SerializeStrongReferences().

Address has_pending_message_address ( )
inline

Definition at line 593 of file isolate.h.

bool has_scheduled_exception ( )
inline
Heap* heap ( )
inline

Definition at line 835 of file isolate.h.

Referenced by JSObject::AddFastProperty(), V8::AddGCEpilogueCallback(), V8::AddGCPrologueCallback(), 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(), Deserializer::DeserializePartial(), Isolate::DoThrow(), JSObject::EnsureWritableFastElements(), StubCache::FindCallInitialize(), HashTable< Shape, Key >::FindEntry(), Runtime::ForceDeleteObjectProperty(), MemoryAllocator::Free(), Heap::FreeQueuedChunks(), Accessors::FunctionGetArguments(), InnerPointerToCodeCache::GcSafeFindCodeForInnerPointer(), StatisticsExtension::GetCounters(), v8::internal::GetEnumPropertyKeys(), v8::internal::GetKeysInFixedArrayFor(), JSObject::GetPropertyWithCallback(), Factory::GlobalConstantFor(), Execution::HandleStackGuardInterrupt(), StubCache::heap(), BASE_EMBEDDED< Visitor >::HGlobalValueNumberer(), 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(), SerializerDeserializer::Iterate(), CompilationSubCache::IterateFunctions(), KeyedLoadIC::Load(), v8::internal::LookupSingleCharacterStringFromCode(), V8::LowMemoryNotification(), String::MakeExternal(), Deoptimizer::MaterializeHeapObjects(), 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(), MessageHandler::ReportMessage(), Isolate::ReportPendingMessages(), StackGuard::RequestCodeReadyEvent(), StackGuard::RequestGC(), StackGuard::RequestRuntimeProfilerTick(), StackGuard::RestoreStackGuard(), OptimizingCompilerThread::Run(), v8::internal::RUNTIME_FUNCTION(), StartupSerializer::SerializeWeakReferences(), JSObject::SetDictionaryElement(), 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 ignore_out_of_memory ( )
inline

Definition at line 698 of file isolate.h.

void InitializeLoggingAndCounters ( )

Definition at line 1781 of file isolate.cc.

References NULL.

Referenced by Isolate::PrintStack(), V8::SetCreateHistogramFunction(), V8::SetJitCodeEventHandler(), and TEST().

INLINE ( static Isolate Current())
inline

Definition at line 439 of file isolate.h.

References ASSERT, Thread::GetExistingThreadLocal(), and v8::internal::NULL.

INLINE ( static Isolate UncheckedCurrent())
inline

Definition at line 446 of file isolate.h.

References Thread::GetThreadLocal().

unibrow::Mapping<unibrow::Ecma262Canonicalize>* interp_canonicalize_mapping ( )
inline

Definition at line 940 of file isolate.h.

bool is_catchable_by_javascript ( MaybeObject *  exception)
inline
bool IsDebuggerActive ( )
inline

Definition at line 52 of file isolate-inl.h.

References v8::internal::NoBarrier_Load().

Referenced by FullCodeGenerator::MakeCode().

bool IsDefaultIsolate ( ) const
inline
bool IsInUse ( )
inline

Definition at line 462 of file isolate.h.

References v8::internal::NULL.

Referenced by Isolate::Dispose().

static Thread::LocalStorageKey isolate_key ( )
inlinestatic

Definition at line 494 of file isolate.h.

void Iterate ( ObjectVisitor *  v)
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 IterateDeferredHandles ( ObjectVisitor *  visitor)

Definition at line 480 of file isolate.cc.

References v8::internal::NULL.

Referenced by Heap::IterateStrongRoots().

void IterateThread ( ThreadVisitor v)
void IterateThread ( ThreadVisitor v,
char *  t 
)

Definition at line 434 of file isolate.cc.

References ThreadVisitor::VisitThread().

static Address js_entry_sp ( ThreadLocalTop *  thread)
inlinestatic

Definition at line 635 of file isolate.h.

Referenced by StackTracer::Trace().

Address* js_entry_sp_address ( )
inline

Definition at line 638 of file isolate.h.

unibrow::Mapping<unibrow::CanonicalizationRange>* jsregexp_canonrange ( )
inline

Definition at line 896 of file isolate.h.

Referenced by CharacterRange::AddCaseEquivalents().

unibrow::Mapping<unibrow::Ecma262UnCanonicalize>* jsregexp_uncanonicalize ( )
inline

Definition at line 892 of file isolate.h.

Referenced by CharacterRange::AddCaseEquivalents().

KeyedLookupCache* keyed_lookup_cache ( )
inline

Definition at line 849 of file isolate.h.

void LinkDeferredHandles ( DeferredHandles deferred_handles)

Definition at line 2029 of file isolate.cc.

References NULL.

Handle< Context > native_context ( )

Definition at line 1345 of file isolate.cc.

References Isolate::thread_local_top().

Referenced by Context::GetCurrent(), and Execution::InstantiateFunction().

NO_INLINE ( void   PushStackTraceAndDieunsigned int magic, Object *object, Map *map, unsigned int magic2)
void NotifyExtensionInstalled ( )
inline

Definition at line 926 of file isolate.h.

StringInputBuffer* objects_string_compare_buffer_a ( )
inline

Definition at line 900 of file isolate.h.

StringInputBuffer* objects_string_compare_buffer_b ( )
inline

Definition at line 904 of file isolate.h.

StaticResource<StringInputBuffer>* objects_string_input_buffer ( )
inline

Definition at line 908 of file isolate.h.

Referenced by String::ToCString(), and String::ToWideCString().

OptimizingCompilerThread* optimizing_compiler_thread ( )
inline
MaybeObject** pending_exception_address ( )
inline

Definition at line 558 of file isolate.h.

Address pending_message_obj_address ( )
inline

Definition at line 589 of file isolate.h.

Address pending_message_script_address ( )
inline

Definition at line 597 of file isolate.h.

static Thread::LocalStorageKey per_isolate_thread_data_key ( )
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 PrintStackTrace ( FILE *  out,
char *  thread_data 
)
Failure * PromoteScheduledException ( )
void PushToPartialSnapshotCache ( Object obj)
unibrow::Mapping<unibrow::Ecma262Canonicalize>* regexp_macro_assembler_canonicalize ( )
inline

Definition at line 933 of file isolate.h.

Referenced by NativeRegExpMacroAssembler::CaseInsensitiveCompareUC16().

void RegisterTryCatchHandler ( v8::TryCatch that)

Definition at line 489 of file isolate.cc.

References SimulatorStack::RegisterCTryCatch(), and Isolate::thread_local_top().

Referenced by TryCatch::TryCatch().

RuntimeState* runtime_state ( )
inline

Definition at line 912 of file isolate.h.

Zone* runtime_zone ( )
inline

Definition at line 868 of file isolate.h.

Referenced by Deoptimizer::VisitAllOptimizedFunctionsForContext().

SaveContext* save_context ( )
inline

Definition at line 527 of file isolate.h.

MaybeObject* scheduled_exception ( )
inline
MaybeObject** scheduled_exception_address ( )
inline

Definition at line 585 of file isolate.h.

void ScheduleThrow ( Object exception)
void set_catcher ( v8::TryCatch catcher)
inline

Definition at line 581 of file isolate.h.

References Isolate::catcher().

Referenced by Isolate::ExceptionScope::~ExceptionScope().

void set_context ( Context context)
inline
void set_context_exit_happened ( bool  context_exit_happened)
inline

Definition at line 1042 of file isolate.h.

References Isolate::context_exit_happened().

Referenced by Context::Exit().

void set_context_switcher ( ContextSwitcher switcher)
inline

Definition at line 886 of file isolate.h.

Referenced by ContextSwitcher::StartPreemption(), and ContextSwitcher::StopPreemption().

void set_date_cache ( DateCache date_cache)
inline

Definition at line 1054 of file isolate.h.

References Isolate::date_cache().

Referenced by TEST().

void set_external_callback ( Address  callback)
inline

Definition at line 999 of file isolate.h.

void set_external_caught_exception ( bool  value)
inline

Definition at line 549 of file isolate.h.

Referenced by MessageHandler::ReportMessage().

void set_fp_stubs_generated ( bool  value)
inline

Definition at line 914 of file isolate.h.

void set_ignore_out_of_memory ( bool  value)
inline

Definition at line 701 of file isolate.h.

Referenced by V8::IgnoreOutOfMemoryException().

void set_pending_exception ( MaybeObject *  exception)
inline
void set_save_context ( SaveContext *  save)
inline

Definition at line 528 of file isolate.h.

Referenced by BASE_EMBEDDED< Visitor >::~SaveContext().

void set_thread_id ( ThreadId  id)
inline

Definition at line 539 of file isolate.h.

void SetCaptureStackTraceForUncaughtExceptions ( bool  capture,
int  frame_limit,
StackTrace::StackTraceOptions  options 
)

Definition at line 1318 of file isolate.cc.

void SetData ( void *  data)
inline

Definition at line 1029 of file isolate.h.

void SetFailedAccessCheckCallback ( v8::FailedAccessCheckCallback  callback)

Definition at line 767 of file isolate.cc.

References Isolate::thread_local_top().

Referenced by V8::SetFailedAccessCheckCallbackFunction().

void SetTopLookupResult ( LookupResult *  top)
inline

Definition at line 1035 of file isolate.h.

Referenced by BASE_EMBEDDED< Visitor >::LookupResult().

bool ShouldReportException ( bool *  can_be_caught_externally,
bool  catchable_by_javascript 
)
StringTracker* string_tracker ( )
inline
void TearDown ( )

Definition at line 1568 of file isolate.cc.

References NULL, and TRACE_ISOLATE.

Referenced by Isolate::Dispose(), and V8::TearDown().

Failure * TerminateExecution ( )
ThreadId thread_id ( )
inline

Definition at line 538 of file isolate.h.

Referenced by V8::GetCurrentThreadId(), and V8::TerminateExecution().

static Thread::LocalStorageKey thread_id_key ( )
inlinestatic

Definition at line 499 of file isolate.h.

Failure * ThrowIllegalOperation ( )

Definition at line 966 of file isolate.cc.

References Isolate::Throw().

Referenced by v8::internal::TransitionElements().

double time_millis_since_init ( )
inline

Definition at line 1046 of file isolate.h.

References OS::TimeCurrentMillis().

LookupResult* top_lookup_result ( )
inline

Definition at line 1032 of file isolate.h.

void TraceException ( bool  flag)

Definition at line 1267 of file isolate.cc.

References v8::internal::flag.

TranscendentalCache* transcendental_cache ( ) const
inline

Definition at line 841 of file isolate.h.

Referenced by Heap::GarbageCollectionPrologue().

v8::TryCatch* try_catch_handler ( )
inline
Address try_catch_handler_address ( )
inline

Definition at line 572 of file isolate.h.

Referenced by Isolate::OptionalRescheduleException().

UnicodeCache* unicode_cache ( )
inline
void UnlinkDeferredHandles ( DeferredHandles deferred_handles)

Definition at line 2038 of file isolate.cc.

References ASSERT, and NULL.

void UnregisterTryCatchHandler ( v8::TryCatch that)
StringInputBuffer* write_input_buffer ( )
inline

Definition at line 878 of file isolate.h.

Referenced by String::WriteAscii(), and String::WriteUtf8().

Friends And Related Function Documentation

friend class ExecutionAccess
friend

Definition at line 1295 of file isolate.h.

friend struct GlobalState
friend

Definition at line 1072 of file isolate.h.

friend class HandleScopeImplementer
friend

Definition at line 1296 of file isolate.h.

friend struct InitializeGlobalState
friend

Definition at line 1073 of file isolate.h.

friend class IsolateInitializer
friend

Definition at line 1297 of file isolate.h.

friend class OptimizingCompilerThread
friend

Definition at line 1298 of file isolate.h.

friend class Simulator
friend

Definition at line 1300 of file isolate.h.

friend class StackGuard
friend

Definition at line 1301 of file isolate.h.

friend class TestMemoryAllocatorScope
friend

Definition at line 1303 of file isolate.h.

friend class ThreadId
friend

Definition at line 1302 of file isolate.h.

friend class ThreadManager
friend

Definition at line 1299 of file isolate.h.

friend class v8::Isolate
friend

Definition at line 1304 of file isolate.h.

friend class v8::Locker
friend

Definition at line 1305 of file isolate.h.

friend class v8::Unlocker
friend

Definition at line 1306 of file isolate.h.

Field Documentation

const int kBMMaxShift = 250
static

Definition at line 788 of file isolate.h.

const int kJSRegexpStaticOffsetsVectorSize = 128
static
const char *const kStackOverflowMessage
static
Initial value:
=
"Uncaught RangeError: Maximum call stack size exceeded"

Definition at line 785 of file isolate.h.

Referenced by RegExpParser::Advance().

const int kUC16AlphabetSize = 256
static

Definition at line 787 of file isolate.h.


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