Index: src/elements.cc |
diff --git a/src/elements.cc b/src/elements.cc |
index af39aaf89d299611ead332278f1ded5b211d8baa..cf78af1da0bb93991b816d88058fb2901b5f72ad 100644 |
--- a/src/elements.cc |
+++ b/src/elements.cc |
@@ -153,12 +153,12 @@ static void CopyObjectToObjectElements(FixedArrayBase* from_base, |
FixedArrayBase* to_base, |
ElementsKind to_kind, uint32_t to_start, |
int raw_copy_size) { |
- ASSERT(to_base->map() != |
+ DCHECK(to_base->map() != |
from_base->GetIsolate()->heap()->fixed_cow_array_map()); |
DisallowHeapAllocation no_allocation; |
int copy_size = raw_copy_size; |
if (raw_copy_size < 0) { |
- ASSERT(raw_copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(raw_copy_size == ElementsAccessor::kCopyToEnd || |
raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = Min(from_base->length() - from_start, |
to_base->length() - to_start); |
@@ -172,13 +172,13 @@ static void CopyObjectToObjectElements(FixedArrayBase* from_base, |
} |
} |
} |
- ASSERT((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
+ DCHECK((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
(copy_size + static_cast<int>(from_start)) <= from_base->length()); |
if (copy_size == 0) return; |
FixedArray* from = FixedArray::cast(from_base); |
FixedArray* to = FixedArray::cast(to_base); |
- ASSERT(IsFastSmiOrObjectElementsKind(from_kind)); |
- ASSERT(IsFastSmiOrObjectElementsKind(to_kind)); |
+ DCHECK(IsFastSmiOrObjectElementsKind(from_kind)); |
+ DCHECK(IsFastSmiOrObjectElementsKind(to_kind)); |
Address to_address = to->address() + FixedArray::kHeaderSize; |
Address from_address = from->address() + FixedArray::kHeaderSize; |
CopyWords(reinterpret_cast<Object**>(to_address) + to_start, |
@@ -205,7 +205,7 @@ static void CopyDictionaryToObjectElements( |
int copy_size = raw_copy_size; |
Heap* heap = from->GetHeap(); |
if (raw_copy_size < 0) { |
- ASSERT(raw_copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(raw_copy_size == ElementsAccessor::kCopyToEnd || |
raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = from->max_number_key() + 1 - from_start; |
if (raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole) { |
@@ -218,8 +218,8 @@ static void CopyDictionaryToObjectElements( |
} |
} |
} |
- ASSERT(to_base != from_base); |
- ASSERT(IsFastSmiOrObjectElementsKind(to_kind)); |
+ DCHECK(to_base != from_base); |
+ DCHECK(IsFastSmiOrObjectElementsKind(to_kind)); |
if (copy_size == 0) return; |
FixedArray* to = FixedArray::cast(to_base); |
uint32_t to_length = to->length(); |
@@ -230,7 +230,7 @@ static void CopyDictionaryToObjectElements( |
int entry = from->FindEntry(i + from_start); |
if (entry != SeededNumberDictionary::kNotFound) { |
Object* value = from->ValueAt(entry); |
- ASSERT(!value->IsTheHole()); |
+ DCHECK(!value->IsTheHole()); |
to->set(i + to_start, value, SKIP_WRITE_BARRIER); |
} else { |
to->set_the_hole(i + to_start); |
@@ -253,10 +253,10 @@ static void CopyDoubleToObjectElements(Handle<FixedArrayBase> from_base, |
ElementsKind to_kind, |
uint32_t to_start, |
int raw_copy_size) { |
- ASSERT(IsFastSmiOrObjectElementsKind(to_kind)); |
+ DCHECK(IsFastSmiOrObjectElementsKind(to_kind)); |
int copy_size = raw_copy_size; |
if (raw_copy_size < 0) { |
- ASSERT(raw_copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(raw_copy_size == ElementsAccessor::kCopyToEnd || |
raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = Min(from_base->length() - from_start, |
to_base->length() - to_start); |
@@ -273,7 +273,7 @@ static void CopyDoubleToObjectElements(Handle<FixedArrayBase> from_base, |
} |
} |
} |
- ASSERT((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
+ DCHECK((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
(copy_size + static_cast<int>(from_start)) <= from_base->length()); |
if (copy_size == 0) return; |
Isolate* isolate = from_base->GetIsolate(); |
@@ -284,7 +284,7 @@ static void CopyDoubleToObjectElements(Handle<FixedArrayBase> from_base, |
if (IsFastSmiElementsKind(to_kind)) { |
UNIMPLEMENTED(); |
} else { |
- ASSERT(IsFastObjectElementsKind(to_kind)); |
+ DCHECK(IsFastObjectElementsKind(to_kind)); |
Handle<Object> value = FixedDoubleArray::get(from, i + from_start); |
to->set(i + to_start, *value, UPDATE_WRITE_BARRIER); |
} |
@@ -299,7 +299,7 @@ static void CopyDoubleToDoubleElements(FixedArrayBase* from_base, |
DisallowHeapAllocation no_allocation; |
int copy_size = raw_copy_size; |
if (raw_copy_size < 0) { |
- ASSERT(raw_copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(raw_copy_size == ElementsAccessor::kCopyToEnd || |
raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = Min(from_base->length() - from_start, |
to_base->length() - to_start); |
@@ -309,7 +309,7 @@ static void CopyDoubleToDoubleElements(FixedArrayBase* from_base, |
} |
} |
} |
- ASSERT((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
+ DCHECK((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
(copy_size + static_cast<int>(from_start)) <= from_base->length()); |
if (copy_size == 0) return; |
FixedDoubleArray* from = FixedDoubleArray::cast(from_base); |
@@ -332,7 +332,7 @@ static void CopySmiToDoubleElements(FixedArrayBase* from_base, |
DisallowHeapAllocation no_allocation; |
int copy_size = raw_copy_size; |
if (raw_copy_size < 0) { |
- ASSERT(raw_copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(raw_copy_size == ElementsAccessor::kCopyToEnd || |
raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = from_base->length() - from_start; |
if (raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole) { |
@@ -341,7 +341,7 @@ static void CopySmiToDoubleElements(FixedArrayBase* from_base, |
} |
} |
} |
- ASSERT((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
+ DCHECK((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
(copy_size + static_cast<int>(from_start)) <= from_base->length()); |
if (copy_size == 0) return; |
FixedArray* from = FixedArray::cast(from_base); |
@@ -368,7 +368,7 @@ static void CopyPackedSmiToDoubleElements(FixedArrayBase* from_base, |
int copy_size = raw_copy_size; |
uint32_t to_end; |
if (raw_copy_size < 0) { |
- ASSERT(raw_copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(raw_copy_size == ElementsAccessor::kCopyToEnd || |
raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = packed_size - from_start; |
if (raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole) { |
@@ -382,9 +382,9 @@ static void CopyPackedSmiToDoubleElements(FixedArrayBase* from_base, |
} else { |
to_end = to_start + static_cast<uint32_t>(copy_size); |
} |
- ASSERT(static_cast<int>(to_end) <= to_base->length()); |
- ASSERT(packed_size >= 0 && packed_size <= copy_size); |
- ASSERT((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
+ DCHECK(static_cast<int>(to_end) <= to_base->length()); |
+ DCHECK(packed_size >= 0 && packed_size <= copy_size); |
+ DCHECK((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
(copy_size + static_cast<int>(from_start)) <= from_base->length()); |
if (copy_size == 0) return; |
FixedArray* from = FixedArray::cast(from_base); |
@@ -392,7 +392,7 @@ static void CopyPackedSmiToDoubleElements(FixedArrayBase* from_base, |
for (uint32_t from_end = from_start + static_cast<uint32_t>(packed_size); |
from_start < from_end; from_start++, to_start++) { |
Object* smi = from->get(from_start); |
- ASSERT(!smi->IsTheHole()); |
+ DCHECK(!smi->IsTheHole()); |
to->set(to_start, Smi::cast(smi)->value()); |
} |
} |
@@ -405,7 +405,7 @@ static void CopyObjectToDoubleElements(FixedArrayBase* from_base, |
DisallowHeapAllocation no_allocation; |
int copy_size = raw_copy_size; |
if (raw_copy_size < 0) { |
- ASSERT(raw_copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(raw_copy_size == ElementsAccessor::kCopyToEnd || |
raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = from_base->length() - from_start; |
if (raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole) { |
@@ -414,7 +414,7 @@ static void CopyObjectToDoubleElements(FixedArrayBase* from_base, |
} |
} |
} |
- ASSERT((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
+ DCHECK((copy_size + static_cast<int>(to_start)) <= to_base->length() && |
(copy_size + static_cast<int>(from_start)) <= from_base->length()); |
if (copy_size == 0) return; |
FixedArray* from = FixedArray::cast(from_base); |
@@ -441,7 +441,7 @@ static void CopyDictionaryToDoubleElements(FixedArrayBase* from_base, |
SeededNumberDictionary* from = SeededNumberDictionary::cast(from_base); |
int copy_size = raw_copy_size; |
if (copy_size < 0) { |
- ASSERT(copy_size == ElementsAccessor::kCopyToEnd || |
+ DCHECK(copy_size == ElementsAccessor::kCopyToEnd || |
copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole); |
copy_size = from->max_number_key() + 1 - from_start; |
if (raw_copy_size == ElementsAccessor::kCopyToEndAndInitializeToHole) { |
@@ -741,7 +741,7 @@ class ElementsAccessorBase : public ElementsAccessor { |
Handle<FixedArrayBase> to, |
uint32_t to_start, |
int copy_size) V8_FINAL V8_OVERRIDE { |
- ASSERT(!from.is_null()); |
+ DCHECK(!from.is_null()); |
ElementsAccessorSubclass::CopyElementsImpl( |
from, from_start, to, from_kind, to_start, kPackedSizeNotKnown, |
copy_size); |
@@ -775,10 +775,10 @@ class ElementsAccessorBase : public ElementsAccessor { |
Handle<FixedArray> to, |
Handle<FixedArrayBase> from) V8_FINAL V8_OVERRIDE { |
int len0 = to->length(); |
-#ifdef ENABLE_SLOW_ASSERTS |
+#ifdef ENABLE_SLOW_DCHECKS |
if (FLAG_enable_slow_asserts) { |
for (int i = 0; i < len0; i++) { |
- ASSERT(!to->get(i)->IsTheHole()); |
+ DCHECK(!to->get(i)->IsTheHole()); |
} |
} |
#endif |
@@ -802,7 +802,7 @@ class ElementsAccessorBase : public ElementsAccessor { |
ElementsAccessorSubclass::GetImpl(receiver, holder, key, from), |
FixedArray); |
- ASSERT(!value->IsTheHole()); |
+ DCHECK(!value->IsTheHole()); |
if (!HasKey(to, value)) { |
extra++; |
} |
@@ -820,7 +820,7 @@ class ElementsAccessorBase : public ElementsAccessor { |
WriteBarrierMode mode = result->GetWriteBarrierMode(no_gc); |
for (int i = 0; i < len0; i++) { |
Object* e = to->get(i); |
- ASSERT(e->IsString() || e->IsNumber()); |
+ DCHECK(e->IsString() || e->IsNumber()); |
result->set(i, e, mode); |
} |
} |
@@ -842,7 +842,7 @@ class ElementsAccessorBase : public ElementsAccessor { |
} |
} |
} |
- ASSERT(extra == index); |
+ DCHECK(extra == index); |
return result; |
} |
@@ -948,7 +948,7 @@ class FastElementsAccessor |
static Handle<Object> DeleteCommon(Handle<JSObject> obj, |
uint32_t key, |
JSReceiver::DeleteMode mode) { |
- ASSERT(obj->HasFastSmiOrObjectElements() || |
+ DCHECK(obj->HasFastSmiOrObjectElements() || |
obj->HasFastDoubleElements() || |
obj->HasFastArgumentsElements()); |
Isolate* isolate = obj->GetIsolate(); |
@@ -1028,7 +1028,7 @@ class FastElementsAccessor |
HandleScope scope(isolate); |
Handle<FixedArrayBase> elements(holder->elements(), isolate); |
Map* map = elements->map(); |
- ASSERT((IsFastSmiOrObjectElementsKind(KindTraits::Kind) && |
+ DCHECK((IsFastSmiOrObjectElementsKind(KindTraits::Kind) && |
(map == isolate->heap()->fixed_array_map() || |
map == isolate->heap()->fixed_cow_array_map())) || |
(IsFastDoubleElementsKind(KindTraits::Kind) == |
@@ -1038,7 +1038,7 @@ class FastElementsAccessor |
for (int i = 0; i < length; i++) { |
HandleScope scope(isolate); |
Handle<BackingStore> backing_store = Handle<BackingStore>::cast(elements); |
- ASSERT((!IsFastSmiElementsKind(KindTraits::Kind) || |
+ DCHECK((!IsFastSmiElementsKind(KindTraits::Kind) || |
BackingStore::get(backing_store, i)->IsSmi()) || |
(IsFastHoleyElementsKind(KindTraits::Kind) == |
backing_store->is_the_hole(i))); |
@@ -1619,7 +1619,7 @@ class SloppyArgumentsElementsAccessor : public ElementsAccessorBase< |
DisallowHeapAllocation no_gc; |
Context* context = Context::cast(parameter_map->get(0)); |
int context_index = Handle<Smi>::cast(probe)->value(); |
- ASSERT(!context->get(context_index)->IsTheHole()); |
+ DCHECK(!context->get(context_index)->IsTheHole()); |
return handle(context->get(context_index), isolate); |
} else { |
// Object is not mapped, defer to the arguments. |
@@ -1637,7 +1637,7 @@ class SloppyArgumentsElementsAccessor : public ElementsAccessorBase< |
AliasedArgumentsEntry* entry = AliasedArgumentsEntry::cast(*result); |
Context* context = Context::cast(parameter_map->get(0)); |
int context_index = entry->aliased_context_slot(); |
- ASSERT(!context->get(context_index)->IsTheHole()); |
+ DCHECK(!context->get(context_index)->IsTheHole()); |
return handle(context->get(context_index), isolate); |
} else { |
return result; |
@@ -1838,13 +1838,13 @@ MaybeHandle<Object> ElementsAccessorBase<ElementsAccessorSubclass, |
if (value >= 0) { |
Handle<Object> new_length = ElementsAccessorSubclass:: |
SetLengthWithoutNormalize(backing_store, array, smi_length, value); |
- ASSERT(!new_length.is_null()); |
+ DCHECK(!new_length.is_null()); |
// even though the proposed length was a smi, new_length could |
// still be a heap number because SetLengthWithoutNormalize doesn't |
// allow the array length property to drop below the index of |
// non-deletable elements. |
- ASSERT(new_length->IsSmi() || new_length->IsHeapNumber() || |
+ DCHECK(new_length->IsSmi() || new_length->IsHeapNumber() || |
new_length->IsUndefined()); |
if (new_length->IsSmi()) { |
array->set_length(*Handle<Smi>::cast(new_length)); |
@@ -1865,13 +1865,13 @@ MaybeHandle<Object> ElementsAccessorBase<ElementsAccessorSubclass, |
if (length->ToArrayIndex(&value)) { |
Handle<SeededNumberDictionary> dictionary = |
JSObject::NormalizeElements(array); |
- ASSERT(!dictionary.is_null()); |
+ DCHECK(!dictionary.is_null()); |
Handle<Object> new_length = DictionaryElementsAccessor:: |
SetLengthWithoutNormalize(dictionary, array, length, value); |
- ASSERT(!new_length.is_null()); |
+ DCHECK(!new_length.is_null()); |
- ASSERT(new_length->IsNumber()); |
+ DCHECK(new_length->IsNumber()); |
array->set_length(*new_length); |
return array; |
} else { |