Index: src/ic.h |
diff --git a/src/ic.h b/src/ic.h |
index 4df0c69611cc62d1deab0a40115e48c9e99d3845..3b4b7fd74cffcaab54ab621f1a1ee7d4e71e459c 100644 |
--- a/src/ic.h |
+++ b/src/ic.h |
@@ -179,17 +179,29 @@ class IC { |
static void PostPatching(Address address, Code* target, Code* old_target); |
// Compute the handler either by compiling or by retrieving a cached version. |
- Handle<Code> ComputeHandler(LookupResult* lookup, |
- Handle<Object> object, |
+ Handle<Code> ComputeHandler(LookupIterator* lookup, Handle<Object> object, |
Handle<String> name, |
Handle<Object> value = Handle<Code>::null()); |
- virtual Handle<Code> CompileHandler(LookupResult* lookup, |
+ virtual Handle<Code> CompileHandler(LookupIterator* lookup, |
Handle<Object> object, |
Handle<String> name, Handle<Object> value, |
CacheHolderFlag cache_holder) { |
UNREACHABLE(); |
return Handle<Code>::null(); |
} |
+ // Temporary copy of the above, but using a LookupResult. |
+ // TODO(jkummerow): Migrate callers to LookupIterator and delete these. |
+ Handle<Code> ComputeStoreHandler(LookupResult* lookup, Handle<Object> object, |
+ Handle<String> name, |
+ Handle<Object> value = Handle<Code>::null()); |
+ virtual Handle<Code> CompileStoreHandler(LookupResult* lookup, |
+ Handle<Object> object, |
+ Handle<String> name, |
+ Handle<Object> value, |
+ CacheHolderFlag cache_holder) { |
+ UNREACHABLE(); |
+ return Handle<Code>::null(); |
+ } |
void UpdateMonomorphicIC(Handle<Code> handler, Handle<String> name); |
bool UpdatePolymorphicIC(Handle<String> name, Handle<Code> code); |
@@ -474,11 +486,10 @@ class LoadIC: public IC { |
// Update the inline cache and the global stub cache based on the |
// lookup result. |
- void UpdateCaches(LookupResult* lookup, |
- Handle<Object> object, |
+ void UpdateCaches(LookupIterator* lookup, Handle<Object> object, |
Handle<String> name); |
- virtual Handle<Code> CompileHandler(LookupResult* lookup, |
+ virtual Handle<Code> CompileHandler(LookupIterator* lookup, |
Handle<Object> object, |
Handle<String> name, |
Handle<Object> unused, |
@@ -638,10 +649,11 @@ class StoreIC: public IC { |
Handle<JSObject> receiver, |
Handle<String> name, |
Handle<Object> value); |
- virtual Handle<Code> CompileHandler(LookupResult* lookup, |
- Handle<Object> object, |
- Handle<String> name, Handle<Object> value, |
- CacheHolderFlag cache_holder); |
+ virtual Handle<Code> CompileStoreHandler(LookupResult* lookup, |
+ Handle<Object> object, |
+ Handle<String> name, |
+ Handle<Object> value, |
+ CacheHolderFlag cache_holder); |
private: |
void set_target(Code* code) { |