Index: src/crankshaft/mips64/lithium-codegen-mips64.cc |
diff --git a/src/crankshaft/mips64/lithium-codegen-mips64.cc b/src/crankshaft/mips64/lithium-codegen-mips64.cc |
index 13849a2f805e46c382b5053998f0434f4a17d3d8..f8de154c37514d1d4c024567b8f68c5d665592c8 100644 |
--- a/src/crankshaft/mips64/lithium-codegen-mips64.cc |
+++ b/src/crankshaft/mips64/lithium-codegen-mips64.cc |
@@ -3979,6 +3979,7 @@ void LCodeGen::DoCallFunction(LCallFunction* instr) { |
DCHECK(ToRegister(instr->result()).is(v0)); |
int arity = instr->arity(); |
+ ConvertReceiverMode mode = instr->hydrogen()->convert_mode(); |
if (instr->hydrogen()->HasVectorAndSlot()) { |
Register slot_register = ToRegister(instr->temp_slot()); |
Register vector_register = ToRegister(instr->temp_vector()); |
@@ -3993,11 +3994,11 @@ void LCodeGen::DoCallFunction(LCallFunction* instr) { |
__ li(slot_register, Operand(Smi::FromInt(index))); |
Handle<Code> ic = |
- CodeFactory::CallICInOptimizedCode(isolate(), arity).code(); |
+ CodeFactory::CallICInOptimizedCode(isolate(), arity, mode).code(); |
CallCode(ic, RelocInfo::CODE_TARGET, instr); |
} else { |
__ li(a0, Operand(arity)); |
- CallCode(isolate()->builtins()->Call(), RelocInfo::CODE_TARGET, instr); |
+ CallCode(isolate()->builtins()->Call(mode), RelocInfo::CODE_TARGET, instr); |
} |
} |