| Index: src/factory.cc
|
| diff --git a/src/factory.cc b/src/factory.cc
|
| index 9f1f085fc7701362d68d00fed153486fc826467b..2b5cf8be1f4224e1179f474259297f89864c59c2 100644
|
| --- a/src/factory.cc
|
| +++ b/src/factory.cc
|
| @@ -729,7 +729,7 @@ Handle<ExternalArray> Factory::NewExternalArray(int length,
|
| ExternalArrayType array_type,
|
| void* external_pointer,
|
| PretenureFlag pretenure) {
|
| - ASSERT(0 <= length);
|
| + ASSERT(0 <= length && length <= Smi::kMaxValue);
|
| CALL_HEAP_FUNCTION(
|
| isolate(),
|
| isolate()->heap()->AllocateExternalArray(length,
|
| @@ -740,6 +740,20 @@ Handle<ExternalArray> Factory::NewExternalArray(int length,
|
| }
|
|
|
|
|
| +Handle<FixedTypedArrayBase> Factory::NewFixedTypedArray(
|
| + int length,
|
| + ExternalArrayType array_type,
|
| + PretenureFlag pretenure) {
|
| + ASSERT(0 <= length && length <= Smi::kMaxValue);
|
| + CALL_HEAP_FUNCTION(
|
| + isolate(),
|
| + isolate()->heap()->AllocateFixedTypedArray(length,
|
| + array_type,
|
| + pretenure),
|
| + FixedTypedArrayBase);
|
| +}
|
| +
|
| +
|
| Handle<Cell> Factory::NewCell(Handle<Object> value) {
|
| AllowDeferredHandleDereference convert_to_cell;
|
| CALL_HEAP_FUNCTION(
|
|
|