| Index: src/objects-debug.cc
|
| diff --git a/src/objects-debug.cc b/src/objects-debug.cc
|
| index 414f2bcf1a66e51f3de3319af278ed4fa18cbac6..e33b46be7991009818f7df4300edf15647c6684b 100644
|
| --- a/src/objects-debug.cc
|
| +++ b/src/objects-debug.cc
|
| @@ -104,61 +104,18 @@ void HeapObject::HeapObjectVerify() {
|
| case FREE_SPACE_TYPE:
|
| FreeSpace::cast(this)->FreeSpaceVerify();
|
| break;
|
| - case EXTERNAL_PIXEL_ARRAY_TYPE:
|
| - ExternalPixelArray::cast(this)->ExternalPixelArrayVerify();
|
| - break;
|
| - case EXTERNAL_BYTE_ARRAY_TYPE:
|
| - ExternalByteArray::cast(this)->ExternalByteArrayVerify();
|
| - break;
|
| - case EXTERNAL_UNSIGNED_BYTE_ARRAY_TYPE:
|
| - ExternalUnsignedByteArray::cast(this)->ExternalUnsignedByteArrayVerify();
|
| - break;
|
| - case EXTERNAL_SHORT_ARRAY_TYPE:
|
| - ExternalShortArray::cast(this)->ExternalShortArrayVerify();
|
| - break;
|
| - case EXTERNAL_UNSIGNED_SHORT_ARRAY_TYPE:
|
| - ExternalUnsignedShortArray::cast(this)->
|
| - ExternalUnsignedShortArrayVerify();
|
| - break;
|
| - case EXTERNAL_INT_ARRAY_TYPE:
|
| - ExternalIntArray::cast(this)->ExternalIntArrayVerify();
|
| - break;
|
| - case EXTERNAL_UNSIGNED_INT_ARRAY_TYPE:
|
| - ExternalUnsignedIntArray::cast(this)->ExternalUnsignedIntArrayVerify();
|
| - break;
|
| - case EXTERNAL_FLOAT_ARRAY_TYPE:
|
| - ExternalFloatArray::cast(this)->ExternalFloatArrayVerify();
|
| - break;
|
| - 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();
|
| +
|
| +#define VERIFY_TYPED_ARRAY(Type, type, TYPE, ctype, size) \
|
| + case EXTERNAL_##TYPE##_ARRAY_TYPE: \
|
| + External##Type##Array::cast(this)->External##Type##ArrayVerify(); \
|
| + break; \
|
| + case FIXED_##TYPE##_ARRAY_TYPE: \
|
| + Fixed##Type##Array::cast(this)->FixedTypedArrayVerify(); \
|
| break;
|
| +
|
| + TYPED_ARRAYS(VERIFY_TYPED_ARRAY)
|
| +#undef VERIFY_TYPED_ARRAY
|
| +
|
| case CODE_TYPE:
|
| Code::cast(this)->CodeVerify();
|
| break;
|
| @@ -289,49 +246,13 @@ void FreeSpace::FreeSpaceVerify() {
|
| }
|
|
|
|
|
| -void ExternalPixelArray::ExternalPixelArrayVerify() {
|
| - CHECK(IsExternalPixelArray());
|
| -}
|
| -
|
| -
|
| -void ExternalByteArray::ExternalByteArrayVerify() {
|
| - CHECK(IsExternalByteArray());
|
| -}
|
| -
|
| -
|
| -void ExternalUnsignedByteArray::ExternalUnsignedByteArrayVerify() {
|
| - CHECK(IsExternalUnsignedByteArray());
|
| -}
|
| -
|
| -
|
| -void ExternalShortArray::ExternalShortArrayVerify() {
|
| - CHECK(IsExternalShortArray());
|
| -}
|
| -
|
| -
|
| -void ExternalUnsignedShortArray::ExternalUnsignedShortArrayVerify() {
|
| - CHECK(IsExternalUnsignedShortArray());
|
| -}
|
| -
|
| -
|
| -void ExternalIntArray::ExternalIntArrayVerify() {
|
| - CHECK(IsExternalIntArray());
|
| -}
|
| -
|
| -
|
| -void ExternalUnsignedIntArray::ExternalUnsignedIntArrayVerify() {
|
| - CHECK(IsExternalUnsignedIntArray());
|
| -}
|
| -
|
| -
|
| -void ExternalFloatArray::ExternalFloatArrayVerify() {
|
| - CHECK(IsExternalFloatArray());
|
| -}
|
| -
|
| +#define EXTERNAL_ARRAY_VERIFY(Type, type, TYPE, ctype, size) \
|
| + void External##Type##Array::External##Type##ArrayVerify() { \
|
| + CHECK(IsExternal##Type##Array()); \
|
| + }
|
|
|
| -void ExternalDoubleArray::ExternalDoubleArrayVerify() {
|
| - CHECK(IsExternalDoubleArray());
|
| -}
|
| +TYPED_ARRAYS(EXTERNAL_ARRAY_VERIFY)
|
| +#undef EXTERNAL_ARRAY_VERIFY
|
|
|
|
|
| template <class Traits>
|
| @@ -1114,25 +1035,14 @@ void JSObject::IncrementSpillStatistics(SpillInformation* info) {
|
| info->number_of_fast_unused_elements_ += holes;
|
| break;
|
| }
|
| - case EXTERNAL_BYTE_ELEMENTS:
|
| - case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| - case EXTERNAL_SHORT_ELEMENTS:
|
| - case EXTERNAL_UNSIGNED_SHORT_ELEMENTS:
|
| - case EXTERNAL_INT_ELEMENTS:
|
| - case EXTERNAL_UNSIGNED_INT_ELEMENTS:
|
| - case EXTERNAL_FLOAT_ELEMENTS:
|
| - case EXTERNAL_DOUBLE_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_++;
|
| +
|
| +#define TYPED_ARRAY_CASE(Type, type, TYPE, ctype, size) \
|
| + case EXTERNAL_##TYPE##_ELEMENTS: \
|
| + case TYPE##_ELEMENTS:
|
| +
|
| + TYPED_ARRAYS(TYPED_ARRAY_CASE)
|
| +#undef TYPED_ARRAY_CASE
|
| + { info->number_of_objects_with_fast_elements_++;
|
| FixedArrayBase* e = FixedArrayBase::cast(elements());
|
| info->number_of_fast_used_elements_ += e->length();
|
| break;
|
|
|