Index: src/ia32/lithium-ia32.h |
diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h |
index f643dac9f6c40edd0042eee72761e40985803461..e471274095065f4be27cd35365f935ae35416b26 100644 |
--- a/src/ia32/lithium-ia32.h |
+++ b/src/ia32/lithium-ia32.h |
@@ -112,6 +112,8 @@ class LCodeGen; |
V(IsObjectAndBranch) \ |
V(IsSmi) \ |
V(IsSmiAndBranch) \ |
+ V(IsConstructCall) \ |
+ V(IsConstructCallAndBranch) \ |
V(JSArrayLength) \ |
V(Label) \ |
V(LazyBailout) \ |
@@ -755,6 +757,24 @@ class LHasCachedArrayIndexAndBranch: public LControlInstruction<1, 0> { |
}; |
+class LIsConstructCall: public LTemplateInstruction<1, 0, 0> { |
+ public: |
+ DECLARE_CONCRETE_INSTRUCTION(IsConstructCall, "is-construct-call") |
+ DECLARE_HYDROGEN_ACCESSOR(IsConstructCall) |
+}; |
+ |
+ |
+class LIsConstructCallAndBranch: public LControlInstruction<0, 1> { |
+ public: |
+ explicit LIsConstructCallAndBranch(LOperand* temp) { |
+ temps_[0] = temp; |
+ } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(IsConstructCallAndBranch, |
+ "is-construct-call-and-branch") |
+}; |
+ |
+ |
class LClassOfTest: public LTemplateInstruction<1, 1, 1> { |
public: |
LClassOfTest(LOperand* value, LOperand* temp) { |