| Index: runtime/vm/intrinsifier_x64.cc
|
| ===================================================================
|
| --- runtime/vm/intrinsifier_x64.cc (revision 11321)
|
| +++ runtime/vm/intrinsifier_x64.cc (working copy)
|
| @@ -44,6 +44,11 @@
|
| __ j(NOT_ZERO, &fall_through);
|
| __ cmpq(RDI, Immediate(0));
|
| __ j(LESS, &fall_through);
|
| + // Check for maximum allowed length.
|
| + const Immediate max_len =
|
| + Immediate(reinterpret_cast<int64_t>(Smi::New(Array::kMaxElements)));
|
| + __ cmpq(RDI, max_len);
|
| + __ j(GREATER, &fall_through);
|
| intptr_t fixed_size = sizeof(RawArray) + kObjectAlignment - 1;
|
| __ leaq(RDI, Address(RDI, TIMES_4, fixed_size)); // RDI is a Smi.
|
| ASSERT(kSmiTagShift == 1);
|
|
|