v8
3.11.10(node0.8.26)
V8 is Google's open source JavaScript engine
|
#include <ic.h>
Public Types | |
enum | TypeInfo { UNINITIALIZED, SMI, HEAP_NUMBER, GENERIC } |
Public Types inherited from IC | |
enum | UtilityId { kUtilityCount } |
enum | FrameDepth { NO_EXTRA_FRAME = 0, EXTRA_CALL_FRAME = 1 } |
typedef InlineCacheState | State |
Public Member Functions | |
UnaryOpIC (Isolate *isolate) | |
void | patch (Code *code) |
Public Member Functions inherited from IC | |
IC (FrameDepth depth, Isolate *isolate) | |
virtual | ~IC () |
Code * | target () const |
Address | address () const |
virtual bool | IsGeneric () const |
RelocInfo::Mode | ComputeMode () |
bool | IsContextual (Handle< Object > receiver) |
bool | SlowIsContextual () |
Static Public Member Functions | |
static const char * | GetName (TypeInfo type_info) |
static State | ToState (TypeInfo type_info) |
static TypeInfo | GetTypeInfo (Handle< Object > operand) |
static TypeInfo | ComputeNewType (TypeInfo type, TypeInfo previous) |
Static Public Member Functions inherited from IC | |
static Address | AddressFromUtilityId (UtilityId id) |
static State | StateFrom (Code *target, Object *receiver, Object *name) |
static void | Clear (Address address) |
static InlineCacheHolderFlag | GetCodeCacheForObject (Object *object, JSObject *holder) |
static InlineCacheHolderFlag | GetCodeCacheForObject (JSObject *object, JSObject *holder) |
static JSObject * | GetCodeCacheHolder (Object *object, InlineCacheHolderFlag holder) |
Additional Inherited Members | |
Protected Member Functions inherited from IC | |
Address | fp () const |
Address | pc () const |
Isolate * | isolate () const |
void | set_target (Code *code) |
Failure * | TypeError (const char *type, Handle< Object > object, Handle< Object > key) |
Failure * | ReferenceError (const char *type, Handle< String > name) |
Static Protected Member Functions inherited from IC | |
static Code * | GetTargetAtAddress (Address address) |
static void | SetTargetAtAddress (Address address, Code *target) |
static void | PostPatching (Address address, Code *target, Code *old_target) |
|
static |
Definition at line 2258 of file ic.cc.
References UnaryOpIC::GENERIC, UnaryOpIC::HEAP_NUMBER, UnaryOpIC::SMI, UnaryOpIC::UNINITIALIZED, and UNREACHABLE.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 2220 of file ic.cc.
References UnaryOpIC::GENERIC, UnaryOpIC::HEAP_NUMBER, UnaryOpIC::SMI, and UnaryOpIC::UNINITIALIZED.
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 2245 of file ic.cc.
References UnaryOpIC::GENERIC, UnaryOpIC::HEAP_NUMBER, TypeInfo::IsNumber(), TypeInfo::IsSmi(), UnaryOpIC::SMI, and TypeInfo::TypeFromValue().
Referenced by v8::internal::RUNTIME_FUNCTION().
void patch | ( | Code * | code | ) |
Definition at line 2215 of file ic.cc.
References IC::set_target().
Referenced by v8::internal::RUNTIME_FUNCTION().
|
static |
Definition at line 2231 of file ic.cc.
References UnaryOpIC::GENERIC, UnaryOpIC::HEAP_NUMBER, v8::internal::MEGAMORPHIC, v8::internal::MONOMORPHIC, UnaryOpIC::SMI, v8::internal::UNINITIALIZED, UnaryOpIC::UNINITIALIZED, and UNREACHABLE.