|
V8 Project
|
#include <handler-compiler.h>
Inheritance diagram for v8::internal::NamedLoadHandlerCompiler:
Collaboration diagram for v8::internal::NamedLoadHandlerCompiler:Public Member Functions | |
| NamedLoadHandlerCompiler (Isolate *isolate, Handle< HeapType > type, Handle< JSObject > holder, CacheHolderFlag cache_holder) | |
| virtual | ~NamedLoadHandlerCompiler () |
| Handle< Code > | CompileLoadField (Handle< Name > name, FieldIndex index) |
| Handle< Code > | CompileLoadCallback (Handle< Name > name, Handle< ExecutableAccessorInfo > callback) |
| Handle< Code > | CompileLoadCallback (Handle< Name > name, const CallOptimization &call_optimization) |
| Handle< Code > | CompileLoadConstant (Handle< Name > name, int constant_index) |
| Handle< Code > | CompileLoadInterceptor (LookupIterator *it) |
| Handle< Code > | CompileLoadViaGetter (Handle< Name > name, Handle< JSFunction > getter) |
| Handle< Code > | CompileLoadGlobal (Handle< PropertyCell > cell, Handle< Name > name, bool is_configurable) |
Static Public Member Functions | |
| static Handle< Code > | ComputeLoadNonexistent (Handle< Name > name, Handle< HeapType > type) |
| static void | GenerateLoadViaGetter (MacroAssembler *masm, Handle< HeapType > type, Register receiver, Handle< JSFunction > getter) |
| static void | GenerateLoadViaGetterForDeopt (MacroAssembler *masm) |
| static void | GenerateLoadFunctionPrototype (MacroAssembler *masm, Register receiver, Register scratch1, Register scratch2, Label *miss_label) |
Static Public Member Functions inherited from v8::internal::PropertyHandlerCompiler | |
| static Handle< Code > | Find (Handle< Name > name, Handle< Map > map, Code::Kind kind, CacheHolderFlag cache_holder, Code::StubType type) |
Static Public Attributes | |
| static const int | kInterceptorArgsNameIndex = 0 |
| static const int | kInterceptorArgsInfoIndex = 1 |
| static const int | kInterceptorArgsThisIndex = 2 |
| static const int | kInterceptorArgsHolderIndex = 3 |
| static const int | kInterceptorArgsLength = 4 |
Private Member Functions | |
| Handle< Code > | CompileLoadNonexistent (Handle< Name > name) |
| void | GenerateLoadConstant (Handle< Object > value) |
| void | GenerateLoadCallback (Register reg, Handle< ExecutableAccessorInfo > callback) |
| void | GenerateLoadCallback (const CallOptimization &call_optimization, Handle< Map > receiver_map) |
| void | GenerateLoadInterceptor (Register holder_reg) |
| void | GenerateLoadInterceptorWithFollowup (LookupIterator *it, Register holder_reg) |
| void | GenerateLoadPostInterceptor (LookupIterator *it, Register reg) |
| Register | scratch4 () |
Static Private Member Functions | |
| static void | GenerateDirectLoadGlobalFunctionPrototype (MacroAssembler *masm, int index, Register prototype, Label *miss) |
Additional Inherited Members | |
Static Protected Member Functions inherited from v8::internal::PropertyHandlerCompiler | |
| static void | GenerateFastApiCall (MacroAssembler *masm, const CallOptimization &optimization, Handle< Map > receiver_map, Register receiver, Register scratch, bool is_store, int argc, Register *values) |
| static void | GenerateDictionaryNegativeLookup (MacroAssembler *masm, Label *miss_label, Register receiver, Handle< Name > name, Register r0, Register r1) |
| static void | GenerateCheckPropertyCell (MacroAssembler *masm, Handle< JSGlobalObject > global, Handle< Name > name, Register scratch, Label *miss) |
Definition at line 100 of file handler-compiler.h.
|
inline |
Definition at line 102 of file handler-compiler.h.
|
inlinevirtual |
Definition at line 108 of file handler-compiler.h.
| Handle< Code > v8::internal::NamedLoadHandlerCompiler::CompileLoadCallback | ( | Handle< Name > | name, |
| const CallOptimization & | call_optimization | ||
| ) |
Definition at line 218 of file handler-compiler.cc.
References DCHECK, v8::internal::Code::FAST, v8::internal::PropertyHandlerCompiler::Frontend(), v8::internal::PropertyHandlerCompiler::GenerateFastApiCall(), v8::internal::PropertyHandlerCompiler::GetCode(), name, NULL, v8::internal::PropertyHandlerCompiler::type(), and v8::internal::IC::TypeToMap().
Here is the call graph for this function:| Handle< Code > v8::internal::NamedLoadHandlerCompiler::CompileLoadCallback | ( | Handle< Name > | name, |
| Handle< ExecutableAccessorInfo > | callback | ||
| ) |
Definition at line 210 of file handler-compiler.cc.
References v8::internal::Code::FAST, v8::internal::PropertyHandlerCompiler::Frontend(), GenerateLoadCallback(), v8::internal::PropertyHandlerCompiler::GetCode(), and name.
Referenced by v8::internal::LoadIC::CompileHandler().
Here is the call graph for this function:
Here is the caller graph for this function:| Handle< Code > v8::internal::NamedLoadHandlerCompiler::CompileLoadConstant | ( | Handle< Name > | name, |
| int | constant_index | ||
| ) |
Definition at line 190 of file handler-compiler.cc.
References __, v8::internal::Code::FAST, v8::internal::PropertyHandlerCompiler::Frontend(), v8::internal::PropertyHandlerCompiler::GetCode(), and name.
Referenced by v8::internal::LoadIC::CompileHandler().
Here is the call graph for this function:
Here is the caller graph for this function:| Handle< Code > v8::internal::NamedLoadHandlerCompiler::CompileLoadField | ( | Handle< Name > | name, |
| FieldIndex | index | ||
| ) |
Definition at line 180 of file handler-compiler.cc.
References __, v8::internal::Code::FAST, v8::internal::PropertyHandlerCompiler::Frontend(), v8::internal::PropertyHandlerCompiler::GetCode(), and name.
Referenced by v8::internal::LoadIC::CompileHandler().
Here is the call graph for this function:
Here is the caller graph for this function:| Handle< Code > v8::internal::NamedLoadHandlerCompiler::CompileLoadInterceptor | ( | LookupIterator * | it | ) |
Definition at line 229 of file handler-compiler.cc.
References v8::internal::ACCESSOR, v8::internal::Handle< T >::cast(), v8::internal::Code::FAST, v8::internal::FIELD, v8::internal::PropertyHandlerCompiler::Frontend(), GenerateLoadInterceptor(), GenerateLoadInterceptorWithFollowup(), v8::internal::PropertyHandlerCompiler::GetCode(), v8::internal::AccessorInfo::IsCompatibleReceiverType(), NULL, v8::internal::PropertyHandlerCompiler::type(), and UNREACHABLE.
Referenced by v8::internal::LoadIC::CompileHandler().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 200 of file handler-compiler.cc.
References v8::internal::Code::FAST, FrontendFooter(), GenerateLoadConstant(), v8::internal::PropertyHandlerCompiler::GetCode(), name, and v8::internal::PropertyHandlerCompiler::NonexistentFrontendHeader().
Referenced by ComputeLoadNonexistent().
Here is the call graph for this function:
Here is the caller graph for this function:| Handle< Code > v8::internal::NamedLoadHandlerCompiler::CompileLoadViaGetter | ( | Handle< Name > | name, |
| Handle< JSFunction > | getter | ||
| ) |
Definition at line 301 of file handler-compiler.cc.
References v8::internal::Code::FAST, v8::internal::PropertyHandlerCompiler::Frontend(), GenerateLoadViaGetter(), v8::internal::PropertyHandlerCompiler::GetCode(), name, and v8::internal::PropertyHandlerCompiler::type().
Referenced by v8::internal::LoadIC::CompileHandler().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 28 of file handler-compiler.cc.
References v8::internal::Handle< T >::cast(), CompileLoadNonexistent(), v8::internal::Isolate::factory(), v8::internal::Code::FAST, v8::internal::PropertyHandlerCompiler::Find(), v8::internal::flag, v8::internal::IC::GetHandlerCacheHolder(), v8::internal::handle(), v8::internal::Handle< T >::is_null(), name, v8::internal::PropertyHandlerCompiler::type(), v8::internal::IC::TypeToMap(), and v8::internal::Map::UpdateCodeCache().
Referenced by v8::internal::LoadIC::UpdateCaches().
Here is the call graph for this function:
Here is the caller graph for this function:
|
protectedvirtual |
Reimplemented from v8::internal::PropertyHandlerCompiler.
Referenced by CompileLoadNonexistent().
Here is the caller graph for this function:
|
protectedvirtual |
Reimplemented from v8::internal::PropertyHandlerCompiler.
Definition at line 90 of file handler-compiler.cc.
References v8::internal::Context::BOOLEAN_FUNCTION_INDEX, v8::internal::CHECK_ALL_MAPS, v8::internal::PropertyHandlerCompiler::CheckPrototypes(), GenerateDirectLoadGlobalFunctionPrototype(), v8::internal::handle(), v8::internal::Is(), name, v8::internal::Context::NUMBER_FUNCTION_INDEX, v8::internal::PropertyHandlerCompiler::set_type_for_object(), v8::internal::SKIP_RECEIVER, v8::internal::Context::STRING_FUNCTION_INDEX, v8::internal::Context::SYMBOL_FUNCTION_INDEX, and v8::internal::PropertyHandlerCompiler::type().
Here is the call graph for this function:
|
staticprivate |
|
private |
|
private |
Referenced by CompileLoadCallback(), and GenerateLoadPostInterceptor().
Here is the caller graph for this function:
|
static |
|
private |
|
private |
|
private |
Definition at line 270 of file handler-compiler.cc.
References __, v8::internal::ACCESSOR, v8::internal::Handle< T >::cast(), DCHECK_EQ, DCHECK_NE, v8::internal::FIELD, v8::internal::PropertyHandlerCompiler::Frontend(), GenerateLoadCallback(), v8::internal::PropertyHandlerCompiler::holder(), NULL, v8::internal::PropertyHandlerCompiler::set_holder(), v8::internal::PropertyHandlerCompiler::set_type_for_object(), and UNREACHABLE.
Here is the call graph for this function:
|
static |
Referenced by CompileLoadViaGetter(), and GenerateLoadViaGetterForDeopt().
Here is the caller graph for this function:
|
inlinestatic |
Definition at line 139 of file handler-compiler.h.
References GenerateLoadViaGetter(), and v8::internal::no_reg.
Referenced by v8::internal::Generate_LoadIC_Getter_ForDeopt().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprivate |
Definition at line 190 of file handler-compiler.h.
|
static |
Definition at line 157 of file handler-compiler.h.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 155 of file handler-compiler.h.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 158 of file handler-compiler.h.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 154 of file handler-compiler.h.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 156 of file handler-compiler.h.
Referenced by v8::internal::RUNTIME_FUNCTION().