Index: src/builtins/mips/builtins-mips.cc |
diff --git a/src/builtins/mips/builtins-mips.cc b/src/builtins/mips/builtins-mips.cc |
index b6b6a5f715d50fc56afc0a428269fe6dca10de78..ded39d4d57ca95adc33ec976bd5e78d8e0b26ca8 100644 |
--- a/src/builtins/mips/builtins-mips.cc |
+++ b/src/builtins/mips/builtins-mips.cc |
@@ -2643,11 +2643,12 @@ static void CheckSpreadAndPushToStack(MacroAssembler* masm) { |
Register native_context = t4; |
+ Label runtime_call, push_args; |
__ lw(spread, MemOperand(sp, 0)); |
+ __ JumpIfSmi(spread, &runtime_call); |
__ lw(spread_map, FieldMemOperand(spread, HeapObject::kMapOffset)); |
__ lw(native_context, NativeContextMemOperand()); |
- Label runtime_call, push_args; |
// Check that the spread is an array. |
__ lbu(scratch, FieldMemOperand(spread_map, Map::kInstanceTypeOffset)); |
__ Branch(&runtime_call, ne, scratch, Operand(JS_ARRAY_TYPE)); |