Index: src/ia32/lithium-ia32.h |
diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h |
index 267bf44a4b8389387644d3331d29901a5d28d719..6cfafd9e92f74271f5d3dbd30ddcc19b60c9b29c 100644 |
--- a/src/ia32/lithium-ia32.h |
+++ b/src/ia32/lithium-ia32.h |
@@ -77,10 +77,12 @@ class LCodeGen; |
V(CmpIDAndBranch) \ |
V(CmpJSObjectEq) \ |
V(CmpJSObjectEqAndBranch) \ |
+ V(CmpMapAndBranch) \ |
V(CmpSymbolEq) \ |
V(CmpSymbolEqAndBranch) \ |
- V(CmpMapAndBranch) \ |
V(CmpT) \ |
+ V(CmpWithConstant) \ |
+ V(CmpWithConstantAndBranch) \ |
V(ConstantD) \ |
V(ConstantI) \ |
V(ConstantT) \ |
@@ -89,6 +91,7 @@ class LCodeGen; |
V(Deoptimize) \ |
V(DivI) \ |
V(DoubleToI) \ |
+ V(ElementsKind) \ |
V(ExternalArrayLength) \ |
V(FixedArrayLength) \ |
V(FunctionLiteral) \ |
@@ -664,6 +667,29 @@ class LCmpSymbolEqAndBranch: public LControlInstruction<2, 0> { |
}; |
+class LCmpWithConstant: public LTemplateInstruction<1, 1, 0> { |
+ public: |
+ explicit LCmpWithConstant(LOperand* left) { |
+ inputs_[0] = left; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(CmpWithConstant, "cmp-with-constant") |
+ DECLARE_HYDROGEN_ACCESSOR(CompareWithConstant) |
+}; |
+ |
+ |
+class LCmpWithConstantAndBranch: public LControlInstruction<1, 0> { |
+ public: |
+ explicit LCmpWithConstantAndBranch(LOperand* left) { |
+ inputs_[0] = left; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(CmpWithConstantAndBranch, |
+ "cmp-with-constant-and-branch") |
+ DECLARE_HYDROGEN_ACCESSOR(CompareWithConstant) |
+}; |
+ |
+ |
class LIsNull: public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LIsNull(LOperand* value) { |
@@ -1078,6 +1104,17 @@ class LFixedArrayLength: public LTemplateInstruction<1, 1, 0> { |
}; |
+class LElementsKind: public LTemplateInstruction<1, 1, 0> { |
+ public: |
+ explicit LElementsKind(LOperand* value) { |
+ inputs_[0] = value; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(ElementsKind, "elements-kind") |
+ DECLARE_HYDROGEN_ACCESSOR(ElementsKind) |
+}; |
+ |
+ |
class LValueOf: public LTemplateInstruction<1, 1, 1> { |
public: |
LValueOf(LOperand* value, LOperand* temp) { |