| Index: src/objects.cc
|
| diff --git a/src/objects.cc b/src/objects.cc
|
| index 16b5bb2c27c175cdcc3421360017ae8c926681ef..f9db08129b60d78e7688ac09b8cdeda2d2585f53 100644
|
| --- a/src/objects.cc
|
| +++ b/src/objects.cc
|
| @@ -983,8 +983,9 @@ void HeapObject::HeapObjectShortPrint(StringStream* accumulator) {
|
| case BYTE_ARRAY_TYPE:
|
| accumulator->Add("<ByteArray[%u]>", ByteArray::cast(this)->length());
|
| break;
|
| - case PIXEL_ARRAY_TYPE:
|
| - accumulator->Add("<PixelArray[%u]>", PixelArray::cast(this)->length());
|
| + case EXTERNAL_PIXEL_ARRAY_TYPE:
|
| + accumulator->Add("<ExternalPixelArray[%u]>",
|
| + ExternalPixelArray::cast(this)->length());
|
| break;
|
| case EXTERNAL_BYTE_ARRAY_TYPE:
|
| accumulator->Add("<ExternalByteArray[%u]>",
|
| @@ -1135,7 +1136,7 @@ void HeapObject::IterateBody(InstanceType type, int object_size,
|
| case HEAP_NUMBER_TYPE:
|
| case FILLER_TYPE:
|
| case BYTE_ARRAY_TYPE:
|
| - case PIXEL_ARRAY_TYPE:
|
| + case EXTERNAL_PIXEL_ARRAY_TYPE:
|
| case EXTERNAL_BYTE_ARRAY_TYPE:
|
| case EXTERNAL_UNSIGNED_BYTE_ARRAY_TYPE:
|
| case EXTERNAL_SHORT_ARRAY_TYPE:
|
| @@ -2485,7 +2486,7 @@ MaybeObject* JSObject::TransformToFastProperties(int unused_property_fields) {
|
|
|
|
|
| MaybeObject* JSObject::NormalizeElements() {
|
| - ASSERT(!HasPixelElements() && !HasExternalArrayElements());
|
| + ASSERT(!HasExternalArrayElements());
|
| if (HasDictionaryElements()) return this;
|
| ASSERT(map()->has_fast_elements());
|
|
|
| @@ -2590,8 +2591,8 @@ MaybeObject* JSObject::DeletePropertyWithInterceptor(String* name) {
|
|
|
| MaybeObject* JSObject::DeleteElementPostInterceptor(uint32_t index,
|
| DeleteMode mode) {
|
| - ASSERT(!HasPixelElements() && !HasExternalArrayElements());
|
| Heap* heap = GetHeap();
|
| + ASSERT(!HasExternalArrayElements());
|
| switch (GetElementsKind()) {
|
| case FAST_ELEMENTS: {
|
| Object* obj;
|
| @@ -2693,7 +2694,7 @@ MaybeObject* JSObject::DeleteElement(uint32_t index, DeleteMode mode) {
|
| }
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| case EXTERNAL_SHORT_ELEMENTS:
|
| @@ -2811,7 +2812,7 @@ bool JSObject::ReferencesObject(Object* obj) {
|
|
|
| // Check if the object is among the indexed properties.
|
| switch (GetElementsKind()) {
|
| - case PIXEL_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| case EXTERNAL_SHORT_ELEMENTS:
|
| @@ -3082,7 +3083,7 @@ MaybeObject* JSObject::DefineGetterSetter(String* name,
|
| switch (GetElementsKind()) {
|
| case FAST_ELEMENTS:
|
| break;
|
| - case PIXEL_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| case EXTERNAL_SHORT_ELEMENTS:
|
| @@ -3308,7 +3309,7 @@ MaybeObject* JSObject::DefineAccessor(AccessorInfo* info) {
|
| switch (GetElementsKind()) {
|
| case FAST_ELEMENTS:
|
| break;
|
| - case PIXEL_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| case EXTERNAL_SHORT_ELEMENTS:
|
| @@ -3898,7 +3899,7 @@ static bool HasKey(FixedArray* array, Object* key) {
|
|
|
| MaybeObject* FixedArray::AddKeysFromJSArray(JSArray* array) {
|
| Heap* heap = GetHeap();
|
| - ASSERT(!array->HasPixelElements() && !array->HasExternalArrayElements());
|
| + ASSERT(!array->HasExternalArrayElements());
|
| switch (array->GetElementsKind()) {
|
| case JSObject::FAST_ELEMENTS:
|
| return UnionOfKeys(FixedArray::cast(array->elements()));
|
| @@ -6366,8 +6367,10 @@ const char* Code::Kind2String(Kind kind) {
|
| case BUILTIN: return "BUILTIN";
|
| case LOAD_IC: return "LOAD_IC";
|
| case KEYED_LOAD_IC: return "KEYED_LOAD_IC";
|
| + case KEYED_EXTERNAL_ARRAY_LOAD_IC: return "KEYED_EXTERNAL_ARRAY_LOAD_IC";
|
| case STORE_IC: return "STORE_IC";
|
| case KEYED_STORE_IC: return "KEYED_STORE_IC";
|
| + case KEYED_EXTERNAL_ARRAY_STORE_IC: return "KEYED_EXTERNAL_ARRAY_STORE_IC";
|
| case CALL_IC: return "CALL_IC";
|
| case KEYED_CALL_IC: return "KEYED_CALL_IC";
|
| case BINARY_OP_IC: return "BINARY_OP_IC";
|
| @@ -6518,7 +6521,7 @@ MaybeObject* JSObject::SetFastElementsCapacityAndLength(int capacity,
|
| int length) {
|
| Heap* heap = GetHeap();
|
| // We should never end in here with a pixel or external array.
|
| - ASSERT(!HasPixelElements() && !HasExternalArrayElements());
|
| + ASSERT(!HasExternalArrayElements());
|
|
|
| Object* obj;
|
| { MaybeObject* maybe_obj = heap->AllocateFixedArrayWithHoles(capacity);
|
| @@ -6572,7 +6575,7 @@ MaybeObject* JSObject::SetFastElementsCapacityAndLength(int capacity,
|
|
|
| MaybeObject* JSObject::SetSlowElements(Object* len) {
|
| // We should never end in here with a pixel or external array.
|
| - ASSERT(!HasPixelElements() && !HasExternalArrayElements());
|
| + ASSERT(!HasExternalArrayElements());
|
|
|
| uint32_t new_length = static_cast<uint32_t>(len->Number());
|
|
|
| @@ -6798,8 +6801,8 @@ bool JSObject::HasElementPostInterceptor(JSObject* receiver, uint32_t index) {
|
| }
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS: {
|
| - PixelArray* pixels = PixelArray::cast(elements());
|
| + case EXTERNAL_PIXEL_ELEMENTS: {
|
| + ExternalPixelArray* pixels = ExternalPixelArray::cast(elements());
|
| if (index < static_cast<uint32_t>(pixels->length())) {
|
| return true;
|
| }
|
| @@ -6920,8 +6923,8 @@ JSObject::LocalElementType JSObject::HasLocalElement(uint32_t index) {
|
| }
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS: {
|
| - PixelArray* pixels = PixelArray::cast(elements());
|
| + case EXTERNAL_PIXEL_ELEMENTS: {
|
| + ExternalPixelArray* pixels = ExternalPixelArray::cast(elements());
|
| if (index < static_cast<uint32_t>(pixels->length())) return FAST_ELEMENT;
|
| break;
|
| }
|
| @@ -6977,8 +6980,8 @@ bool JSObject::HasElementWithReceiver(JSObject* receiver, uint32_t index) {
|
| !FixedArray::cast(elements())->get(index)->IsTheHole()) return true;
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS: {
|
| - PixelArray* pixels = PixelArray::cast(elements());
|
| + case EXTERNAL_PIXEL_ELEMENTS: {
|
| + ExternalPixelArray* pixels = ExternalPixelArray::cast(elements());
|
| if (index < static_cast<uint32_t>(pixels->length())) {
|
| return true;
|
| }
|
| @@ -7274,8 +7277,8 @@ MaybeObject* JSObject::SetElementWithoutInterceptor(uint32_t index,
|
| case FAST_ELEMENTS:
|
| // Fast case.
|
| return SetFastElement(index, value, strict_mode, check_prototype);
|
| - case PIXEL_ELEMENTS: {
|
| - PixelArray* pixels = PixelArray::cast(elements());
|
| + case EXTERNAL_PIXEL_ELEMENTS: {
|
| + ExternalPixelArray* pixels = ExternalPixelArray::cast(elements());
|
| return pixels->SetValue(index, value);
|
| }
|
| case EXTERNAL_BYTE_ELEMENTS: {
|
| @@ -7440,7 +7443,7 @@ MaybeObject* JSObject::GetElementPostInterceptor(Object* receiver,
|
| }
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| case EXTERNAL_SHORT_ELEMENTS:
|
| @@ -7541,7 +7544,7 @@ MaybeObject* JSObject::GetElementWithReceiver(Object* receiver,
|
| }
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| case EXTERNAL_SHORT_ELEMENTS:
|
| @@ -7583,8 +7586,8 @@ MaybeObject* JSObject::GetExternalElement(uint32_t index) {
|
| // Get element works for both JSObject and JSArray since
|
| // JSArray::length cannot change.
|
| switch (GetElementsKind()) {
|
| - case PIXEL_ELEMENTS: {
|
| - PixelArray* pixels = PixelArray::cast(elements());
|
| + case EXTERNAL_PIXEL_ELEMENTS: {
|
| + ExternalPixelArray* pixels = ExternalPixelArray::cast(elements());
|
| if (index < static_cast<uint32_t>(pixels->length())) {
|
| uint8_t value = pixels->get(index);
|
| return Smi::FromInt(value);
|
| @@ -7672,7 +7675,7 @@ bool JSObject::HasDenseElements() {
|
| }
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| case EXTERNAL_SHORT_ELEMENTS:
|
| @@ -7905,8 +7908,8 @@ bool JSObject::HasRealElementProperty(uint32_t index) {
|
| return (index < length) &&
|
| !FixedArray::cast(elements())->get(index)->IsTheHole();
|
| }
|
| - case PIXEL_ELEMENTS: {
|
| - PixelArray* pixels = PixelArray::cast(elements());
|
| + case EXTERNAL_PIXEL_ELEMENTS: {
|
| + ExternalPixelArray* pixels = ExternalPixelArray::cast(elements());
|
| return index < static_cast<uint32_t>(pixels->length());
|
| }
|
| case EXTERNAL_BYTE_ELEMENTS:
|
| @@ -8138,8 +8141,8 @@ int JSObject::GetLocalElementKeys(FixedArray* storage,
|
| ASSERT(!storage || storage->length() >= counter);
|
| break;
|
| }
|
| - case PIXEL_ELEMENTS: {
|
| - int length = PixelArray::cast(elements())->length();
|
| + case EXTERNAL_PIXEL_ELEMENTS: {
|
| + int length = ExternalPixelArray::cast(elements())->length();
|
| while (counter < length) {
|
| if (storage != NULL) {
|
| storage->set(counter, Smi::FromInt(counter));
|
| @@ -8824,7 +8827,7 @@ MaybeObject* JSObject::PrepareSlowElementsForSort(uint32_t limit) {
|
| // mode.
|
| MaybeObject* JSObject::PrepareElementsForSort(uint32_t limit) {
|
| Heap* heap = GetHeap();
|
| - ASSERT(!HasPixelElements() && !HasExternalArrayElements());
|
| + ASSERT(!HasExternalArrayElements());
|
|
|
| if (HasDictionaryElements()) {
|
| // Convert to fast elements containing only the existing properties.
|
| @@ -8936,7 +8939,7 @@ MaybeObject* JSObject::PrepareElementsForSort(uint32_t limit) {
|
| }
|
|
|
|
|
| -Object* PixelArray::SetValue(uint32_t index, Object* value) {
|
| +Object* ExternalPixelArray::SetValue(uint32_t index, Object* value) {
|
| uint8_t clamped_value = 0;
|
| if (index < static_cast<uint32_t>(length())) {
|
| if (value->IsSmi()) {
|
|
|