Index: src/builtins/arm64/builtins-arm64.cc |
diff --git a/src/builtins/arm64/builtins-arm64.cc b/src/builtins/arm64/builtins-arm64.cc |
index cc4ba869a357b1e9b1d4eb8fd08852a66cc0a887..0cd1ec0a7d60ebf07ebdfa715da39df0e532f808 100644 |
--- a/src/builtins/arm64/builtins-arm64.cc |
+++ b/src/builtins/arm64/builtins-arm64.cc |
@@ -2711,10 +2711,11 @@ static void CheckSpreadAndPushToStack(MacroAssembler* masm) { |
Register spread_len = x5; |
+ Label runtime_call, push_args; |
__ Peek(spread, 0); |
+ __ JumpIfSmi(spread, &runtime_call); |
__ Ldr(spread_map, FieldMemOperand(spread, HeapObject::kMapOffset)); |
- Label runtime_call, push_args; |
// Check that the spread is an array. |
__ CompareInstanceType(spread_map, scratch, JS_ARRAY_TYPE); |
__ B(ne, &runtime_call); |