| Index: src/arm/lithium-codegen-arm.cc
|
| diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc
|
| index 24e51e0681de93690fc4be00805197cc5d145086..464a177243d55b2affff27d6418b527f35ce5bf6 100644
|
| --- a/src/arm/lithium-codegen-arm.cc
|
| +++ b/src/arm/lithium-codegen-arm.cc
|
| @@ -2410,11 +2410,11 @@ void LCodeGen::DoLoadElements(LLoadElements* instr) {
|
| __ ldr(scratch, FieldMemOperand(scratch, Map::kBitField2Offset));
|
| __ ubfx(scratch, scratch, Map::kElementsKindShift,
|
| Map::kElementsKindBitCount);
|
| - __ cmp(scratch, Operand(JSObject::FAST_ELEMENTS));
|
| + __ cmp(scratch, Operand(FAST_ELEMENTS));
|
| __ b(eq, &done);
|
| - __ cmp(scratch, Operand(JSObject::FIRST_EXTERNAL_ARRAY_ELEMENTS_KIND));
|
| + __ cmp(scratch, Operand(FIRST_EXTERNAL_ARRAY_ELEMENTS_KIND));
|
| __ b(lt, &fail);
|
| - __ cmp(scratch, Operand(JSObject::LAST_EXTERNAL_ARRAY_ELEMENTS_KIND));
|
| + __ cmp(scratch, Operand(LAST_EXTERNAL_ARRAY_ELEMENTS_KIND));
|
| __ b(le, &done);
|
| __ bind(&fail);
|
| __ Abort("Check for fast or external elements failed.");
|
| @@ -2478,7 +2478,7 @@ void LCodeGen::DoLoadKeyedFastDoubleElement(
|
| Register scratch = scratch0();
|
|
|
| int shift_size =
|
| - ElementsKindToShiftSize(JSObject::FAST_DOUBLE_ELEMENTS);
|
| + ElementsKindToShiftSize(FAST_DOUBLE_ELEMENTS);
|
| int constant_key = 0;
|
| if (key_is_constant) {
|
| constant_key = ToInteger32(LConstantOperand::cast(instr->key()));
|
| @@ -2515,7 +2515,7 @@ void LCodeGen::DoLoadKeyedSpecializedArrayElement(
|
| LLoadKeyedSpecializedArrayElement* instr) {
|
| Register external_pointer = ToRegister(instr->external_pointer());
|
| Register key = no_reg;
|
| - JSObject::ElementsKind elements_kind = instr->elements_kind();
|
| + ElementsKind elements_kind = instr->elements_kind();
|
| bool key_is_constant = instr->key()->IsConstantOperand();
|
| int constant_key = 0;
|
| if (key_is_constant) {
|
| @@ -2528,18 +2528,18 @@ void LCodeGen::DoLoadKeyedSpecializedArrayElement(
|
| }
|
| int shift_size = ElementsKindToShiftSize(elements_kind);
|
|
|
| - if (elements_kind == JSObject::EXTERNAL_FLOAT_ELEMENTS ||
|
| - elements_kind == JSObject::EXTERNAL_DOUBLE_ELEMENTS) {
|
| + if (elements_kind == EXTERNAL_FLOAT_ELEMENTS ||
|
| + elements_kind == EXTERNAL_DOUBLE_ELEMENTS) {
|
| CpuFeatures::Scope scope(VFP3);
|
| DwVfpRegister result = ToDoubleRegister(instr->result());
|
| Operand operand = key_is_constant
|
| ? Operand(constant_key * (1 << shift_size))
|
| : Operand(key, LSL, shift_size);
|
| __ add(scratch0(), external_pointer, operand);
|
| - if (elements_kind == JSObject::EXTERNAL_FLOAT_ELEMENTS) {
|
| + if (elements_kind == EXTERNAL_FLOAT_ELEMENTS) {
|
| __ vldr(result.low(), scratch0(), 0);
|
| __ vcvt_f64_f32(result, result.low());
|
| - } else { // i.e. elements_kind == JSObject::EXTERNAL_DOUBLE_ELEMENTS
|
| + } else { // i.e. elements_kind == EXTERNAL_DOUBLE_ELEMENTS
|
| __ vldr(result, scratch0(), 0);
|
| }
|
| } else {
|
| @@ -2548,23 +2548,23 @@ void LCodeGen::DoLoadKeyedSpecializedArrayElement(
|
| ? MemOperand(external_pointer, constant_key * (1 << shift_size))
|
| : MemOperand(external_pointer, key, LSL, shift_size));
|
| switch (elements_kind) {
|
| - case JSObject::EXTERNAL_BYTE_ELEMENTS:
|
| + case EXTERNAL_BYTE_ELEMENTS:
|
| __ ldrsb(result, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_PIXEL_ELEMENTS:
|
| - case JSObject::EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| + case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| __ ldrb(result, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_SHORT_ELEMENTS:
|
| + case EXTERNAL_SHORT_ELEMENTS:
|
| __ ldrsh(result, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_UNSIGNED_SHORT_ELEMENTS:
|
| + case EXTERNAL_UNSIGNED_SHORT_ELEMENTS:
|
| __ ldrh(result, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_INT_ELEMENTS:
|
| + case EXTERNAL_INT_ELEMENTS:
|
| __ ldr(result, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_UNSIGNED_INT_ELEMENTS:
|
| + case EXTERNAL_UNSIGNED_INT_ELEMENTS:
|
| __ ldr(result, mem_operand);
|
| __ cmp(result, Operand(0x80000000));
|
| // TODO(danno): we could be more clever here, perhaps having a special
|
| @@ -2572,12 +2572,12 @@ void LCodeGen::DoLoadKeyedSpecializedArrayElement(
|
| // happens, and generate code that returns a double rather than int.
|
| DeoptimizeIf(cs, instr->environment());
|
| break;
|
| - case JSObject::EXTERNAL_FLOAT_ELEMENTS:
|
| - case JSObject::EXTERNAL_DOUBLE_ELEMENTS:
|
| - case JSObject::FAST_DOUBLE_ELEMENTS:
|
| - case JSObject::FAST_ELEMENTS:
|
| - case JSObject::DICTIONARY_ELEMENTS:
|
| - case JSObject::NON_STRICT_ARGUMENTS_ELEMENTS:
|
| + case EXTERNAL_FLOAT_ELEMENTS:
|
| + case EXTERNAL_DOUBLE_ELEMENTS:
|
| + case FAST_DOUBLE_ELEMENTS:
|
| + case FAST_ELEMENTS:
|
| + case DICTIONARY_ELEMENTS:
|
| + case NON_STRICT_ARGUMENTS_ELEMENTS:
|
| UNREACHABLE();
|
| break;
|
| }
|
| @@ -3340,7 +3340,7 @@ void LCodeGen::DoStoreKeyedFastDoubleElement(
|
| } else {
|
| key = ToRegister(instr->key());
|
| }
|
| - int shift_size = ElementsKindToShiftSize(JSObject::FAST_DOUBLE_ELEMENTS);
|
| + int shift_size = ElementsKindToShiftSize(FAST_DOUBLE_ELEMENTS);
|
| Operand operand = key_is_constant
|
| ? Operand(constant_key * (1 << shift_size) +
|
| FixedDoubleArray::kHeaderSize - kHeapObjectTag)
|
| @@ -3367,7 +3367,7 @@ void LCodeGen::DoStoreKeyedSpecializedArrayElement(
|
|
|
| Register external_pointer = ToRegister(instr->external_pointer());
|
| Register key = no_reg;
|
| - JSObject::ElementsKind elements_kind = instr->elements_kind();
|
| + ElementsKind elements_kind = instr->elements_kind();
|
| bool key_is_constant = instr->key()->IsConstantOperand();
|
| int constant_key = 0;
|
| if (key_is_constant) {
|
| @@ -3380,17 +3380,17 @@ void LCodeGen::DoStoreKeyedSpecializedArrayElement(
|
| }
|
| int shift_size = ElementsKindToShiftSize(elements_kind);
|
|
|
| - if (elements_kind == JSObject::EXTERNAL_FLOAT_ELEMENTS ||
|
| - elements_kind == JSObject::EXTERNAL_DOUBLE_ELEMENTS) {
|
| + if (elements_kind == EXTERNAL_FLOAT_ELEMENTS ||
|
| + elements_kind == EXTERNAL_DOUBLE_ELEMENTS) {
|
| CpuFeatures::Scope scope(VFP3);
|
| DwVfpRegister value(ToDoubleRegister(instr->value()));
|
| Operand operand(key_is_constant ? Operand(constant_key * (1 << shift_size))
|
| : Operand(key, LSL, shift_size));
|
| __ add(scratch0(), external_pointer, operand);
|
| - if (elements_kind == JSObject::EXTERNAL_FLOAT_ELEMENTS) {
|
| + if (elements_kind == EXTERNAL_FLOAT_ELEMENTS) {
|
| __ vcvt_f32_f64(double_scratch0().low(), value);
|
| __ vstr(double_scratch0().low(), scratch0(), 0);
|
| - } else { // i.e. elements_kind == JSObject::EXTERNAL_DOUBLE_ELEMENTS
|
| + } else { // i.e. elements_kind == EXTERNAL_DOUBLE_ELEMENTS
|
| __ vstr(value, scratch0(), 0);
|
| }
|
| } else {
|
| @@ -3399,25 +3399,25 @@ void LCodeGen::DoStoreKeyedSpecializedArrayElement(
|
| ? MemOperand(external_pointer, constant_key * (1 << shift_size))
|
| : MemOperand(external_pointer, key, LSL, shift_size));
|
| switch (elements_kind) {
|
| - case JSObject::EXTERNAL_PIXEL_ELEMENTS:
|
| - case JSObject::EXTERNAL_BYTE_ELEMENTS:
|
| - case JSObject::EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| + case EXTERNAL_PIXEL_ELEMENTS:
|
| + case EXTERNAL_BYTE_ELEMENTS:
|
| + case EXTERNAL_UNSIGNED_BYTE_ELEMENTS:
|
| __ strb(value, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_SHORT_ELEMENTS:
|
| - case JSObject::EXTERNAL_UNSIGNED_SHORT_ELEMENTS:
|
| + case EXTERNAL_SHORT_ELEMENTS:
|
| + case EXTERNAL_UNSIGNED_SHORT_ELEMENTS:
|
| __ strh(value, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_INT_ELEMENTS:
|
| - case JSObject::EXTERNAL_UNSIGNED_INT_ELEMENTS:
|
| + case EXTERNAL_INT_ELEMENTS:
|
| + case EXTERNAL_UNSIGNED_INT_ELEMENTS:
|
| __ str(value, mem_operand);
|
| break;
|
| - case JSObject::EXTERNAL_FLOAT_ELEMENTS:
|
| - case JSObject::EXTERNAL_DOUBLE_ELEMENTS:
|
| - case JSObject::FAST_DOUBLE_ELEMENTS:
|
| - case JSObject::FAST_ELEMENTS:
|
| - case JSObject::DICTIONARY_ELEMENTS:
|
| - case JSObject::NON_STRICT_ARGUMENTS_ELEMENTS:
|
| + case EXTERNAL_FLOAT_ELEMENTS:
|
| + case EXTERNAL_DOUBLE_ELEMENTS:
|
| + case FAST_DOUBLE_ELEMENTS:
|
| + case FAST_ELEMENTS:
|
| + case DICTIONARY_ELEMENTS:
|
| + case NON_STRICT_ARGUMENTS_ELEMENTS:
|
| UNREACHABLE();
|
| break;
|
| }
|
|
|