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

#include <objects.h>

Inheritance diagram for TypeFeedbackInfo:
Collaboration diagram for TypeFeedbackInfo:

Public Member Functions

int ic_total_count ()
 
void set_ic_total_count (int count)
 
int ic_with_type_info_count ()
 
void change_ic_with_type_info_count (int count)
 
void initialize_storage ()
 
void change_own_type_change_checksum ()
 
int own_type_change_checksum ()
 
void set_inlined_type_change_checksum (int checksum)
 
bool matches_inlined_type_change_checksum (int checksum)
 
- Public Member Functions inherited from Struct
void InitializeBody (int object_size)
 
- Public Member Functions inherited from HeapObject
Mapmap ()
 
void set_map (Map *value)
 
void set_map_no_write_barrier (Map *value)
 
MapWord map_word ()
 
void set_map_word (MapWord map_word)
 
HeapGetHeap ()
 
IsolateGetIsolate ()
 
Address address ()
 
void Iterate (ObjectVisitor *v)
 
void IterateBody (InstanceType type, int object_size, ObjectVisitor *v)
 
int Size ()
 
int SizeFromMap (Map *map)
 
WriteBarrierMode GetWriteBarrierMode (const DisallowHeapAllocation &promise)
 
void HeapObjectShortPrint (StringStream *accumulator)
 
 STATIC_CHECK (kMapOffset==Internals::kHeapObjectMapOffset)
 
- Public Member Functions inherited from Object
bool IsObject ()
 
bool IsFixedArrayBase ()
 
bool IsExternal ()
 
bool IsAccessorInfo ()
 
bool IsStruct ()
 
 INLINE (bool IsSpecObject())
 
 INLINE (bool IsSpecFunction())
 
bool IsCallable ()
 
 INLINE (bool IsUndefined())
 
 INLINE (bool IsNull())
 
 INLINE (bool IsTheHole())
 
 INLINE (bool IsUninitialized())
 
 INLINE (bool IsTrue())
 
 INLINE (bool IsFalse())
 
bool IsArgumentsMarker ()
 
bool NonFailureIsHeapObject ()
 
bool IsFiller ()
 
double Number ()
 
bool IsNaN ()
 
bool ToInt32 (int32_t *value)
 
bool ToUint32 (uint32_t *value)
 
Representation OptimalRepresentation (ValueType type=OPTIMAL_REPRESENTATION)
 
bool FitsRepresentation (Representation representation)
 
MaybeObject * AllocateNewStorageFor (Heap *heap, Representation representation)
 
bool HasValidElements ()
 
bool HasSpecificClassOf (String *name)
 
MUST_USE_RESULT MaybeObject * ToObject (Isolate *isolate)
 
bool BooleanValue ()
 
MUST_USE_RESULT MaybeObject * ToObject (Context *native_context)
 
MUST_USE_RESULT MaybeObject * ToSmi ()
 
void Lookup (Name *name, LookupResult *result)
 
MUST_USE_RESULT MaybeObject * GetProperty (Name *key)
 
MUST_USE_RESULT MaybeObject * GetProperty (Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithReceiver (Object *receiver, Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetProperty (Object *receiver, LookupResult *result, Name *key, PropertyAttributes *attributes)
 
MUST_USE_RESULT MaybeObject * GetPropertyWithDefinedGetter (Object *receiver, JSReceiver *getter)
 
ObjectGetPrototype (Isolate *isolate)
 
MapGetMarkerMap (Isolate *isolate)
 
ObjectGetHash ()
 
bool SameValue (Object *other)
 
bool ToArrayIndex (uint32_t *index)
 
bool IsStringObjectWithCharacterAt (uint32_t index)
 
void VerifyApiCallResultType ()
 
void ShortPrint (FILE *out=stdout)
 
void ShortPrint (StringStream *accumulator)
 

Static Public Member Functions

static TypeFeedbackInfocast (Object *obj)
 
static Handle< ObjectUninitializedSentinel (Isolate *isolate)
 
static Handle< ObjectMegamorphicSentinel (Isolate *isolate)
 
static Handle< ObjectMonomorphicArraySentinel (Isolate *isolate, ElementsKind elements_kind)
 
static ObjectRawUninitializedSentinel (Heap *heap)
 
- Static Public Member Functions inherited from Struct
static Structcast (Object *that)
 
- Static Public Member Functions inherited from HeapObject
static HeapObjectFromAddress (Address address)
 
static Object ** RawField (HeapObject *obj, int offset)
 
static void UpdateMapCodeCache (Handle< HeapObject > object, Handle< Name > name, Handle< Code > code)
 
static HeapObjectcast (Object *obj)
 
- Static Public Member Functions inherited from Object
static MUST_USE_RESULT Handle
< Object
ToSmi (Isolate *isolate, Handle< Object > object)
 
static Handle< ObjectGetPropertyWithReceiver (Handle< Object > object, Handle< Object > receiver, Handle< Name > name, PropertyAttributes *attributes)
 
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Name > key)
 
static Handle< ObjectGetProperty (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes)
 
static MUST_USE_RESULT
MaybeObject * 
GetPropertyOrFail (Handle< Object > object, Handle< Object > receiver, LookupResult *result, Handle< Name > key, PropertyAttributes *attributes)
 
static Handle< ObjectGetElement (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static Handle< ObjectGetElementNoExceptionThrown (Isolate *isolate, Handle< Object > object, uint32_t index)
 
static Handle< ObjectGetElementWithReceiver (Isolate *isolate, Handle< Object > object, Handle< Object > receiver, uint32_t index)
 
static Handle< ObjectGetOrCreateHash (Handle< Object > object, Isolate *isolate)
 
static Objectcast (Object *value)
 

Static Public Attributes

static const int kStorage1Offset = HeapObject::kHeaderSize
 
static const int kStorage2Offset = kStorage1Offset + kPointerSize
 
static const int kFeedbackVectorOffset
 
static const int kSize = kFeedbackVectorOffset + kPointerSize
 
static const int kForInFastCaseMarker = 0
 
static const int kForInSlowCaseMarker = 1
 
- Static Public Attributes inherited from HeapObject
static const int kMapOffset = Object::kHeaderSize
 
static const int kHeaderSize = kMapOffset + kPointerSize
 
- Static Public Attributes inherited from Object
static const int kHeaderSize = 0
 

Additional Inherited Members

- Public Types inherited from Object
enum  ValueType { OPTIMAL_REPRESENTATION, FORCE_TAGGED }
 
- Protected Member Functions inherited from HeapObject
void IteratePointers (ObjectVisitor *v, int start, int end)
 
void IteratePointer (ObjectVisitor *v, int offset)
 
void IterateNextCodeLink (ObjectVisitor *v, int offset)
 

Detailed Description

Definition at line 8185 of file objects.h.

Member Function Documentation

void change_ic_with_type_info_count ( int  count)
inline
void change_own_type_change_checksum ( )
inline
int ic_total_count ( )
inline
int ic_with_type_info_count ( )
inline
void initialize_storage ( )
inline
bool matches_inlined_type_change_checksum ( int  checksum)
inline
Handle< Object > MegamorphicSentinel ( Isolate isolate)
inlinestatic

Definition at line 6680 of file objects-inl.h.

References Isolate::factory().

Handle< Object > MonomorphicArraySentinel ( Isolate isolate,
ElementsKind  elements_kind 
)
inlinestatic

Definition at line 6685 of file objects-inl.h.

References Smi::FromInt().

int own_type_change_checksum ( )
inline
Object * RawUninitializedSentinel ( Heap heap)
inlinestatic

Definition at line 6691 of file objects-inl.h.

Referenced by Code::ClearTypeFeedbackInfo().

void set_ic_total_count ( int  count)
inline
void set_inlined_type_change_checksum ( int  checksum)
inline
Handle< Object > UninitializedSentinel ( Isolate isolate)
inlinestatic

Definition at line 6675 of file objects-inl.h.

References Isolate::factory().

Referenced by TEST().

Field Documentation

const int kFeedbackVectorOffset
static
Initial value:

Definition at line 8211 of file objects.h.

const int kForInFastCaseMarker = 0
static

Definition at line 8230 of file objects.h.

Referenced by TypeFeedbackOracle::ForInType().

const int kForInSlowCaseMarker = 1
static

Definition at line 8231 of file objects.h.

const int kSize = kFeedbackVectorOffset + kPointerSize
static

Definition at line 8213 of file objects.h.


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