| Index: src/type-info.h
|
| ===================================================================
|
| --- src/type-info.h (revision 8618)
|
| +++ src/type-info.h (working copy)
|
| @@ -36,6 +36,8 @@
|
| namespace v8 {
|
| namespace internal {
|
|
|
| +const int kMaxKeyedPolymorphism = 4;
|
| +
|
| // Unknown
|
| // | \____________
|
| // | |
|
| @@ -215,8 +217,10 @@
|
| public:
|
| TypeFeedbackOracle(Handle<Code> code, Handle<Context> global_context);
|
|
|
| - bool LoadIsMonomorphic(Property* expr);
|
| - bool StoreIsMonomorphic(Expression* expr);
|
| + bool LoadIsMonomorphicNormal(Property* expr);
|
| + bool LoadIsMegamorphicWithTypeInfo(Property* expr);
|
| + bool StoreIsMonomorphicNormal(Expression* expr);
|
| + bool StoreIsMegamorphicWithTypeInfo(Expression* expr);
|
| bool CallIsMonomorphic(Call* expr);
|
|
|
| Handle<Map> LoadMonomorphicReceiverType(Property* expr);
|
| @@ -227,10 +231,9 @@
|
| ZoneMapList* CallReceiverTypes(Call* expr,
|
| Handle<String> name,
|
| CallKind call_kind);
|
| + void CollectKeyedReceiverTypes(unsigned ast_id,
|
| + ZoneMapList* types);
|
|
|
| - ExternalArrayType GetKeyedLoadExternalArrayType(Property* expr);
|
| - ExternalArrayType GetKeyedStoreExternalArrayType(Expression* expr);
|
| -
|
| CheckType GetCallCheckType(Call* expr);
|
| Handle<JSObject> GetPrototypeForPrimitiveCheck(CheckType check);
|
|
|
| @@ -251,12 +254,15 @@
|
|
|
| void SetInfo(unsigned ast_id, Object* target);
|
|
|
| - void PopulateMap(Handle<Code> code);
|
| + void BuildDictionary(Handle<Code> code);
|
| + void GetRelocInfos(Handle<Code> code, ZoneList<RelocInfo>* infos);
|
| + void CreateDictionary(Handle<Code> code, ZoneList<RelocInfo>* infos);
|
| + void RelocateRelocInfos(ZoneList<RelocInfo>* infos,
|
| + byte* old_start,
|
| + byte* new_start);
|
| + void ProcessRelocInfos(ZoneList<RelocInfo>* infos);
|
| + void ProcessTarget(unsigned ast_id, Code* target);
|
|
|
| - void CollectIds(Code* code,
|
| - List<int>* code_positions,
|
| - List<unsigned>* ast_ids);
|
| -
|
| // Returns an element from the backing store. Returns undefined if
|
| // there is no information.
|
| Handle<Object> GetInfo(unsigned ast_id);
|
|
|