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
TypeFeedbackOracle Class Reference

#include <type-info.h>

Inheritance diagram for TypeFeedbackOracle:
Collaboration diagram for TypeFeedbackOracle:

Public Member Functions

 TypeFeedbackOracle (Handle< Code > code, Handle< Context > native_context, Isolate *isolate, Zone *zone)
 
bool LoadIsMonomorphicNormal (Property *expr)
 
bool LoadIsUninitialized (Property *expr)
 
bool LoadIsMegamorphicWithTypeInfo (Property *expr)
 
bool StoreIsMonomorphicNormal (TypeFeedbackId ast_id)
 
bool StoreIsMegamorphicWithTypeInfo (TypeFeedbackId ast_id)
 
bool CallIsMonomorphic (Call *expr)
 
bool CallNewIsMonomorphic (CallNew *expr)
 
bool ObjectLiteralStoreIsMonomorphic (ObjectLiteral::Property *prop)
 
bool IsForInFastCase (ForInStatement *expr)
 
Handle< MapLoadMonomorphicReceiverType (Property *expr)
 
Handle< MapStoreMonomorphicReceiverType (TypeFeedbackId ast_id)
 
void LoadReceiverTypes (Property *expr, Handle< String > name, SmallMapList *types)
 
void StoreReceiverTypes (Assignment *expr, Handle< String > name, SmallMapList *types)
 
void CallReceiverTypes (Call *expr, Handle< String > name, CallKind call_kind, SmallMapList *types)
 
void CollectKeyedReceiverTypes (TypeFeedbackId ast_id, SmallMapList *types)
 
CheckType GetCallCheckType (Call *expr)
 
Handle< JSObjectGetPrototypeForPrimitiveCheck (CheckType check)
 
Handle< JSFunctionGetCallTarget (Call *expr)
 
Handle< JSFunctionGetCallNewTarget (CallNew *expr)
 
Handle< MapGetObjectLiteralStoreMap (ObjectLiteral::Property *prop)
 
bool LoadIsBuiltin (Property *expr, Builtins::Name id)
 
byte ToBooleanTypes (TypeFeedbackId ast_id)
 
TypeInfo UnaryType (UnaryOperation *expr)
 
TypeInfo BinaryType (BinaryOperation *expr)
 
TypeInfo CompareType (CompareOperation *expr)
 
bool IsSymbolCompare (CompareOperation *expr)
 
Handle< MapGetCompareMap (CompareOperation *expr)
 
TypeInfo SwitchType (CaseClause *clause)
 
TypeInfo IncrementType (CountOperation *expr)
 
Zonezone () const
 
- Public Member Functions inherited from ZoneObject
 INLINE (void *operator new(size_t size, Zone *zone))
 
void operator delete (void *, size_t)
 
void operator delete (void *pointer, Zone *zone)
 

Static Public Member Functions

static bool CanRetainOtherContext (Map *map, Context *native_context)
 
static bool CanRetainOtherContext (JSFunction *function, Context *native_context)
 

Detailed Description

Definition at line 235 of file type-info.h.

Constructor & Destructor Documentation

TypeFeedbackOracle ( Handle< Code code,
Handle< Context native_context,
Isolate isolate,
Zone zone 
)

Definition at line 62 of file type-info.cc.

References ASSERT, v8::internal::kHandleZapValue, and TypeFeedbackOracle::zone().

Member Function Documentation

bool CallIsMonomorphic ( Call expr)

Definition at line 166 of file type-info.cc.

References Call::CallFeedbackId().

Referenced by Call::RecordTypeFeedback().

bool CallNewIsMonomorphic ( CallNew expr)

Definition at line 172 of file type-info.cc.

References CallNew::CallNewFeedbackId().

Referenced by CallNew::RecordTypeFeedback().

bool CanRetainOtherContext ( JSFunction function,
Context native_context 
)
static

Definition at line 558 of file type-info.cc.

References Context::builtins(), and Context::global_object().

CheckType GetCallCheckType ( Call expr)
Handle< JSFunction > GetCallNewTarget ( CallNew expr)

Definition at line 297 of file type-info.cc.

References CallNew::CallNewFeedbackId(), and Handle< T >::cast().

Referenced by CallNew::RecordTypeFeedback().

Handle< JSFunction > GetCallTarget ( Call expr)

Definition at line 292 of file type-info.cc.

References Call::CallFeedbackId(), and Handle< T >::cast().

Referenced by Call::RecordTypeFeedback().

bool IsForInFastCase ( ForInStatement expr)
bool LoadIsBuiltin ( Property expr,
Builtins::Name  id 
)
bool LoadIsUninitialized ( Property expr)
void LoadReceiverTypes ( Property expr,
Handle< String name,
SmallMapList types 
)
void StoreReceiverTypes ( Assignment expr,
Handle< String name,
SmallMapList types 
)
byte ToBooleanTypes ( TypeFeedbackId  ast_id)

Definition at line 597 of file type-info.cc.

References Handle< T >::cast().

Zone* zone ( ) const
inline

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