| Index: src/ic.cc
 | 
| diff --git a/src/ic.cc b/src/ic.cc
 | 
| index f09af327a192fa7b7305928baa1a11b44642a047..cd44f8831bbb941641e4e88640d0589698b744a5 100644
 | 
| --- a/src/ic.cc
 | 
| +++ b/src/ic.cc
 | 
| @@ -554,6 +554,23 @@ void CompareIC::Clear(Isolate* isolate,
 | 
|  }
 | 
|  
 | 
|  
 | 
| +Handle<Code> KeyedLoadIC::megamorphic_stub() {
 | 
| +  if (FLAG_compiled_keyed_generic_loads) {
 | 
| +    return KeyedLoadGenericElementStub(isolate()).GetCode();
 | 
| +  } else {
 | 
| +    return isolate()->builtins()->KeyedLoadIC_Generic();
 | 
| +  }
 | 
| +}
 | 
| +
 | 
| +Handle<Code> KeyedLoadIC::generic_stub() const {
 | 
| +  if (FLAG_compiled_keyed_generic_loads) {
 | 
| +    return KeyedLoadGenericElementStub(isolate()).GetCode();
 | 
| +  } else {
 | 
| +    return isolate()->builtins()->KeyedLoadIC_Generic();
 | 
| +  }
 | 
| +}
 | 
| +
 | 
| +
 | 
|  static bool MigrateDeprecated(Handle<Object> object) {
 | 
|    if (!object->IsJSObject()) return false;
 | 
|    Handle<JSObject> receiver = Handle<JSObject>::cast(object);
 | 
| @@ -1154,7 +1171,8 @@ MaybeHandle<Object> KeyedLoadIC::Load(Handle<Object> object,
 | 
|    }
 | 
|  
 | 
|    if (!is_target_set()) {
 | 
| -    if (*stub == *generic_stub()) {
 | 
| +    Code* generic = *generic_stub();
 | 
| +    if (*stub == generic) {
 | 
|        TRACE_GENERIC_IC(isolate(), "KeyedLoadIC", "set generic");
 | 
|      }
 | 
|      set_target(*stub);
 | 
| @@ -1799,7 +1817,8 @@ MaybeHandle<Object> KeyedStoreIC::Store(Handle<Object> object,
 | 
|    }
 | 
|  
 | 
|    if (!is_target_set()) {
 | 
| -    if (*stub == *generic_stub()) {
 | 
| +    Code* generic = *generic_stub();
 | 
| +    if (*stub == generic) {
 | 
|        TRACE_GENERIC_IC(isolate(), "KeyedStoreIC", "set generic");
 | 
|      }
 | 
|      ASSERT(!stub.is_null());
 | 
| 
 |