| Index: src/ic.h
|
| diff --git a/src/ic.h b/src/ic.h
|
| index 60c90796de357a8d154f91dbb04f3bcb2be1087c..91b07f41e30ff3bfd38cfe6e5a1edec033ec4da5 100644
|
| --- a/src/ic.h
|
| +++ b/src/ic.h
|
| @@ -172,27 +172,17 @@ class IC {
|
| static inline void SetTargetAtAddress(Address address, Code* target);
|
| static void PostPatching(Address address, Code* target, Code* old_target);
|
|
|
| - virtual void UpdateMonomorphicIC(Handle<HeapObject> receiver,
|
| - Handle<Code> handler,
|
| - Handle<String> name,
|
| - StrictModeFlag strict_mode) {
|
| - set_target(*handler);
|
| - }
|
| + void UpdateMonomorphicIC(Handle<HeapObject> receiver,
|
| + Handle<Code> handler,
|
| + Handle<String> name,
|
| + StrictModeFlag strict_mode);
|
| +
|
| bool UpdatePolymorphicIC(State state,
|
| Handle<HeapObject> receiver,
|
| Handle<String> name,
|
| Handle<Code> code,
|
| StrictModeFlag strict_mode);
|
|
|
| - virtual Handle<Code> ComputePolymorphicIC(MapHandleList* receiver_maps,
|
| - CodeHandleList* handlers,
|
| - int number_of_valid_maps,
|
| - Handle<Name> name,
|
| - StrictModeFlag strict_mode) {
|
| - UNREACHABLE();
|
| - return Handle<Code>::null();
|
| - };
|
| -
|
| void CopyICToMegamorphicCache(Handle<String> name);
|
| bool IsTransitionedMapOfMonomorphicTarget(Map* receiver_map);
|
| void PatchCache(State state,
|
| @@ -408,17 +398,6 @@ class LoadIC: public IC {
|
| Handle<Object> object,
|
| Handle<String> name);
|
|
|
| - virtual void UpdateMonomorphicIC(Handle<HeapObject> receiver,
|
| - Handle<Code> handler,
|
| - Handle<String> name,
|
| - StrictModeFlag strict_mode);
|
| -
|
| - virtual Handle<Code> ComputePolymorphicIC(MapHandleList* receiver_maps,
|
| - CodeHandleList* handlers,
|
| - int number_of_valid_maps,
|
| - Handle<Name> name,
|
| - StrictModeFlag strict_mode);
|
| -
|
| virtual Handle<Code> ComputeLoadHandler(LookupResult* lookup,
|
| Handle<JSObject> receiver,
|
| Handle<String> name);
|
| @@ -496,10 +475,6 @@ class KeyedLoadIC: public LoadIC {
|
| }
|
|
|
| // Update the inline cache.
|
| - virtual void UpdateMonomorphicIC(Handle<HeapObject> receiver,
|
| - Handle<Code> handler,
|
| - Handle<String> name,
|
| - StrictModeFlag strict_mode);
|
| virtual Handle<Code> ComputeLoadHandler(LookupResult* lookup,
|
| Handle<JSObject> receiver,
|
| Handle<String> name);
|
| @@ -594,17 +569,6 @@ class StoreIC: public IC {
|
| return isolate()->builtins()->StoreIC_GlobalProxy_Strict();
|
| }
|
|
|
| - virtual void UpdateMonomorphicIC(Handle<HeapObject> receiver,
|
| - Handle<Code> handler,
|
| - Handle<String> name,
|
| - StrictModeFlag strict_mode);
|
| -
|
| - virtual Handle<Code> ComputePolymorphicIC(MapHandleList* receiver_maps,
|
| - CodeHandleList* handlers,
|
| - int number_of_valid_maps,
|
| - Handle<Name> name,
|
| - StrictModeFlag strict_mode);
|
| -
|
| // Update the inline cache and the global stub cache based on the
|
| // lookup result.
|
| void UpdateCaches(LookupResult* lookup,
|
| @@ -715,11 +679,6 @@ class KeyedStoreIC: public StoreIC {
|
| KeyedAccessStoreMode store_mode,
|
| StrictModeFlag strict_mode);
|
|
|
| - virtual void UpdateMonomorphicIC(Handle<HeapObject> receiver,
|
| - Handle<Code> handler,
|
| - Handle<String> name,
|
| - StrictModeFlag strict_mode);
|
| -
|
| private:
|
| void set_target(Code* code) {
|
| // Strict mode must be preserved across IC patching.
|
|
|