Index: src/arm/lithium-arm.h |
diff --git a/src/arm/lithium-arm.h b/src/arm/lithium-arm.h |
index ad80f02b645a5bc711df09c2a9ee7d326faa3028..77aabaf7390c43fcdb69c33c20dc0bbcd06d3bee 100644 |
--- a/src/arm/lithium-arm.h |
+++ b/src/arm/lithium-arm.h |
@@ -122,10 +122,10 @@ class LCodeGen; |
V(LoadGlobal) \ |
V(LoadKeyedFastElement) \ |
V(LoadKeyedGeneric) \ |
+ V(LoadKeyedSpecializedArrayElement) \ |
V(LoadNamedField) \ |
V(LoadNamedFieldPolymorphic) \ |
V(LoadNamedGeneric) \ |
- V(LoadPixelArrayElement) \ |
V(ModI) \ |
V(MulI) \ |
V(NumberTagD) \ |
@@ -147,9 +147,9 @@ class LCodeGen; |
V(StoreGlobal) \ |
V(StoreKeyedFastElement) \ |
V(StoreKeyedGeneric) \ |
+ V(StoreKeyedSpecializedArrayElement) \ |
V(StoreNamedField) \ |
V(StoreNamedGeneric) \ |
- V(StorePixelArrayElement) \ |
V(StringCharCodeAt) \ |
V(StringCharFromCode) \ |
V(StringLength) \ |
@@ -1225,19 +1225,23 @@ class LLoadKeyedFastElement: public LTemplateInstruction<1, 2, 0> { |
}; |
-class LLoadPixelArrayElement: public LTemplateInstruction<1, 2, 0> { |
+class LLoadKeyedSpecializedArrayElement: public LTemplateInstruction<1, 2, 0> { |
public: |
- LLoadPixelArrayElement(LOperand* external_pointer, LOperand* key) { |
+ LLoadKeyedSpecializedArrayElement(LOperand* external_pointer, |
+ LOperand* key) { |
inputs_[0] = external_pointer; |
inputs_[1] = key; |
} |
- DECLARE_CONCRETE_INSTRUCTION(LoadPixelArrayElement, |
- "load-pixel-array-element") |
- DECLARE_HYDROGEN_ACCESSOR(LoadPixelArrayElement) |
+ DECLARE_CONCRETE_INSTRUCTION(LoadKeyedSpecializedArrayElement, |
+ "load-keyed-specialized-array-element") |
+ DECLARE_HYDROGEN_ACCESSOR(LoadKeyedSpecializedArrayElement) |
LOperand* external_pointer() { return inputs_[0]; } |
LOperand* key() { return inputs_[1]; } |
+ ExternalArrayType array_type() const { |
+ return hydrogen()->array_type(); |
+ } |
}; |
@@ -1642,25 +1646,29 @@ class LStoreKeyedGeneric: public LTemplateInstruction<0, 3, 0> { |
LOperand* value() { return inputs_[2]; } |
}; |
-class LStorePixelArrayElement: public LTemplateInstruction<0, 3, 0> { |
+class LStoreKeyedSpecializedArrayElement: public LTemplateInstruction<0, 3, 0> { |
public: |
- LStorePixelArrayElement(LOperand* external_pointer, |
- LOperand* key, |
- LOperand* val) { |
+ LStoreKeyedSpecializedArrayElement(LOperand* external_pointer, |
+ LOperand* key, |
+ LOperand* val) { |
inputs_[0] = external_pointer; |
inputs_[1] = key; |
inputs_[2] = val; |
} |
- DECLARE_CONCRETE_INSTRUCTION(StorePixelArrayElement, |
- "store-pixel-array-element") |
- DECLARE_HYDROGEN_ACCESSOR(StorePixelArrayElement) |
+ DECLARE_CONCRETE_INSTRUCTION(StoreKeyedSpecializedArrayElement, |
+ "store-keyed-specialized-array-element") |
+ DECLARE_HYDROGEN_ACCESSOR(StoreKeyedSpecializedArrayElement) |
LOperand* external_pointer() { return inputs_[0]; } |
LOperand* key() { return inputs_[1]; } |
LOperand* value() { return inputs_[2]; } |
+ ExternalArrayType array_type() const { |
+ return hydrogen()->array_type(); |
+ } |
}; |
+ |
class LStringCharCodeAt: public LTemplateInstruction<1, 2, 0> { |
public: |
LStringCharCodeAt(LOperand* string, LOperand* index) { |