Index: src/hydrogen.cc |
=================================================================== |
--- src/hydrogen.cc (revision 9080) |
+++ src/hydrogen.cc (working copy) |
@@ -4800,13 +4800,15 @@ |
// Found pattern f.apply(receiver, arguments). |
VisitForValue(prop->obj()); |
if (HasStackOverflow() || current_block() == NULL) return true; |
- HValue* function = Pop(); |
+ HValue* function = Top(); |
+ AddCheckConstantFunction(expr, function, function_map, true); |
+ Drop(1); |
+ |
VisitForValue(args->at(0)); |
if (HasStackOverflow() || current_block() == NULL) return true; |
HValue* receiver = Pop(); |
HInstruction* elements = AddInstruction(new(zone()) HArgumentsElements); |
HInstruction* length = AddInstruction(new(zone()) HArgumentsLength(elements)); |
- AddCheckConstantFunction(expr, function, function_map, true); |
HInstruction* result = |
new(zone()) HApplyArguments(function, receiver, length, elements); |
result->set_position(expr->position()); |