| Index: src/ic.cc
|
| diff --git a/src/ic.cc b/src/ic.cc
|
| index 9b304057ade037d471539297de6c3c4762d9bc73..53c103a89989074790fd0a839d978763d4202825 100644
|
| --- a/src/ic.cc
|
| +++ b/src/ic.cc
|
| @@ -1237,15 +1237,12 @@ Handle<Code> LoadIC::CompileHandler(LookupResult* lookup,
|
| return isolate()->builtins()->LoadIC_Normal();
|
| case CALLBACKS: {
|
| // Use simple field loads for some well-known callback properties.
|
| - int object_offset;
|
| if (object->IsJSObject()) {
|
| Handle<JSObject> receiver = Handle<JSObject>::cast(object);
|
| Handle<Map> map(receiver->map());
|
| + int object_offset;
|
| if (Accessors::IsJSObjectFieldAccessor(map, name, &object_offset)) {
|
| - PropertyIndex index =
|
| - PropertyIndex::NewHeaderIndex(object_offset / kPointerSize);
|
| - return compiler.CompileLoadField(
|
| - receiver, receiver, name, index, Representation::Tagged());
|
| + return SimpleFieldLoad(object_offset / kPointerSize);
|
| }
|
| }
|
|
|
|
|