Index: src/ia32/lithium-ia32.h |
diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h |
index db046feae805c2b4b94891fa2d9f35ec5f708d5e..f1b9ffc997bc7fb36feb13bd1e9870a7c9c75afd 100644 |
--- a/src/ia32/lithium-ia32.h |
+++ b/src/ia32/lithium-ia32.h |
@@ -124,6 +124,8 @@ class LCodeGen; |
V(LoadKeyedGeneric) \ |
V(LoadNamedField) \ |
V(LoadNamedGeneric) \ |
+ V(LoadPixelArrayElement) \ |
+ V(LoadPixelArrayExternalPointer) \ |
V(ModI) \ |
V(MulI) \ |
V(NumberTagD) \ |
@@ -133,6 +135,7 @@ class LCodeGen; |
V(OsrEntry) \ |
V(OuterContext) \ |
V(Parameter) \ |
+ V(PixelArrayLength) \ |
V(Power) \ |
V(PushArgument) \ |
V(RegExpLiteral) \ |
@@ -1022,6 +1025,17 @@ class LJSArrayLength: public LTemplateInstruction<1, 1, 0> { |
}; |
+class LPixelArrayLength: public LTemplateInstruction<1, 1, 0> { |
+ public: |
+ explicit LPixelArrayLength(LOperand* value) { |
+ inputs_[0] = value; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(PixelArrayLength, "pixel-array-length") |
+ DECLARE_HYDROGEN_ACCESSOR(PixelArrayLength) |
+}; |
+ |
+ |
class LFixedArrayLength: public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LFixedArrayLength(LOperand* value) { |
@@ -1186,6 +1200,17 @@ class LLoadElements: public LTemplateInstruction<1, 1, 0> { |
}; |
+class LLoadPixelArrayExternalPointer: public LTemplateInstruction<1, 1, 0> { |
+ public: |
+ explicit LLoadPixelArrayExternalPointer(LOperand* object) { |
+ inputs_[0] = object; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(LoadPixelArrayExternalPointer, |
+ "load-pixel-array-external-pointer") |
+}; |
+ |
+ |
class LLoadKeyedFastElement: public LTemplateInstruction<1, 2, 0> { |
public: |
LLoadKeyedFastElement(LOperand* elements, LOperand* key) { |
@@ -1201,6 +1226,22 @@ class LLoadKeyedFastElement: public LTemplateInstruction<1, 2, 0> { |
}; |
+class LLoadPixelArrayElement: public LTemplateInstruction<1, 2, 0> { |
+ public: |
+ LLoadPixelArrayElement(LOperand* external_pointer, LOperand* key) { |
+ inputs_[0] = external_pointer; |
+ inputs_[1] = key; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(LoadPixelArrayElement, |
+ "load-pixel-array-element") |
+ DECLARE_HYDROGEN_ACCESSOR(LoadPixelArrayElement) |
+ |
+ LOperand* external_pointer() { return inputs_[0]; } |
+ LOperand* key() { return inputs_[1]; } |
+}; |
+ |
+ |
class LLoadKeyedGeneric: public LTemplateInstruction<1, 3, 0> { |
public: |
LLoadKeyedGeneric(LOperand* context, LOperand* obj, LOperand* key) { |