| Index: src/runtime.cc
|
| diff --git a/src/runtime.cc b/src/runtime.cc
|
| index e28783d4e06a5a71267830a6c5f4832c33d2599e..61d363ac20f7cd78aa62db070e372a64be10d2f6 100644
|
| --- a/src/runtime.cc
|
| +++ b/src/runtime.cc
|
| @@ -5083,9 +5083,9 @@ RUNTIME_FUNCTION(Runtime_KeyedGetProperty) {
|
| Handle<Name> key = Handle<Name>::cast(key_obj);
|
| if (receiver->HasFastProperties()) {
|
| // Attempt to use lookup cache.
|
| - Map* receiver_map = receiver->map();
|
| + Handle<Map> receiver_map(receiver->map(), isolate);
|
| KeyedLookupCache* keyed_lookup_cache = isolate->keyed_lookup_cache();
|
| - int offset = keyed_lookup_cache->Lookup(receiver_map, *key);
|
| + int offset = keyed_lookup_cache->Lookup(receiver_map, key);
|
| if (offset != -1) {
|
| // Doubles are not cached, so raw read the value.
|
| Object* value = receiver->RawFastPropertyAt(offset);
|
| @@ -5102,7 +5102,7 @@ RUNTIME_FUNCTION(Runtime_KeyedGetProperty) {
|
| // Do not track double fields in the keyed lookup cache. Reading
|
| // double values requires boxing.
|
| if (!result.representation().IsDouble()) {
|
| - keyed_lookup_cache->Update(receiver_map, *key, offset);
|
| + keyed_lookup_cache->Update(receiver_map, key, offset);
|
| }
|
| AllowHeapAllocation allow_allocation;
|
| return *JSObject::FastPropertyAt(
|
|
|