Index: src/mips/lithium-mips.cc |
diff --git a/src/mips/lithium-mips.cc b/src/mips/lithium-mips.cc |
index 03c64d9d2784282bbf763d3f5fb65501a4f2fc84..1635b77fa7ad128fde2753ffc59c02dda8525a93 100644 |
--- a/src/mips/lithium-mips.cc |
+++ b/src/mips/lithium-mips.cc |
@@ -1330,8 +1330,10 @@ LInstruction* LChunkBuilder::DoCallNewArray(HCallNewArray* instr) { |
LInstruction* LChunkBuilder::DoCallFunction(HCallFunction* instr) { |
LOperand* context = UseFixed(instr->context(), cp); |
LOperand* function = UseFixed(instr->function(), a1); |
- return MarkAsCall( |
- DefineFixed(new(zone()) LCallFunction(context, function), v0), instr); |
+ LCallFunction* call = new(zone()) LCallFunction(context, function); |
+ LInstruction* result = DefineFixed(call, v0); |
+ if (instr->IsTailCall()) return result; |
+ return MarkAsCall(result, instr); |
} |