Version 3.24.18
Performance and stability improvements on all platforms.
git-svn-id: http://v8.googlecode.com/svn/trunk@18654 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/objects-debug.cc b/src/objects-debug.cc
index ed93e1d..414f2bc 100644
--- a/src/objects-debug.cc
+++ b/src/objects-debug.cc
@@ -132,6 +132,33 @@
case EXTERNAL_DOUBLE_ARRAY_TYPE:
ExternalDoubleArray::cast(this)->ExternalDoubleArrayVerify();
break;
+ case FIXED_UINT8_ARRAY_TYPE:
+ FixedUint8Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_INT8_ARRAY_TYPE:
+ FixedInt8Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_UINT16_ARRAY_TYPE:
+ FixedUint16Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_INT16_ARRAY_TYPE:
+ FixedInt16Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_UINT32_ARRAY_TYPE:
+ FixedUint32Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_INT32_ARRAY_TYPE:
+ FixedInt32Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_FLOAT32_ARRAY_TYPE:
+ FixedFloat32Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_FLOAT64_ARRAY_TYPE:
+ FixedFloat64Array::cast(this)->FixedTypedArrayVerify();
+ break;
+ case FIXED_UINT8_CLAMPED_ARRAY_TYPE:
+ FixedUint8ClampedArray::cast(this)->FixedTypedArrayVerify();
+ break;
case CODE_TYPE:
Code::cast(this)->CodeVerify();
break;
@@ -307,6 +334,14 @@
}
+template <class Traits>
+void FixedTypedArray<Traits>::FixedTypedArrayVerify() {
+ CHECK(IsHeapObject() &&
+ HeapObject::cast(this)->map()->instance_type() ==
+ Traits::kInstanceType);
+}
+
+
bool JSObject::ElementsAreSafeToExamine() {
return (FLAG_use_gvn && FLAG_use_allocation_folding) ||
reinterpret_cast<Map*>(elements()) !=
@@ -1087,9 +1122,18 @@
case EXTERNAL_UNSIGNED_INT_ELEMENTS:
case EXTERNAL_FLOAT_ELEMENTS:
case EXTERNAL_DOUBLE_ELEMENTS:
- case EXTERNAL_PIXEL_ELEMENTS: {
+ case EXTERNAL_PIXEL_ELEMENTS:
+ case UINT8_ELEMENTS:
+ case INT8_ELEMENTS:
+ case UINT16_ELEMENTS:
+ case INT16_ELEMENTS:
+ case UINT32_ELEMENTS:
+ case INT32_ELEMENTS:
+ case FLOAT32_ELEMENTS:
+ case FLOAT64_ELEMENTS:
+ case UINT8_CLAMPED_ELEMENTS: {
info->number_of_objects_with_fast_elements_++;
- ExternalPixelArray* e = ExternalPixelArray::cast(elements());
+ FixedArrayBase* e = FixedArrayBase::cast(elements());
info->number_of_fast_used_elements_ += e->length();
break;
}