| Index: src/ic/ic.cc | 
| diff --git a/src/ic/ic.cc b/src/ic/ic.cc | 
| index 23944028a6466cb172aaf41c85903ff8cb553f57..a9ad1c9df254db4a9ae2f857058342a1f2887ffe 100644 | 
| --- a/src/ic/ic.cc | 
| +++ b/src/ic/ic.cc | 
| @@ -1159,7 +1159,7 @@ Handle<Code> LoadIC::CompileHandler(LookupIterator* lookup, | 
| // Use specialized code for getting prototype of functions. | 
| if (receiver->IsJSFunction() && | 
| Name::Equals(isolate()->factory()->prototype_string(), lookup->name()) && | 
| -      Handle<JSFunction>::cast(receiver)->should_have_prototype() && | 
| +      receiver->IsConstructor() && | 
| !Handle<JSFunction>::cast(receiver) | 
| ->map() | 
| ->has_non_instance_prototype()) { | 
|  |