Index: src/hydrogen-instructions.h |
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
index b9c0ca9fce3d3e67b3e3a7f6b050c7f2f3ae6376..fc8f6addb2c7c632e2c3b5f816ca51cdacaecc0a 100644 |
--- a/src/hydrogen-instructions.h |
+++ b/src/hydrogen-instructions.h |
@@ -100,6 +100,7 @@ class LChunkBuilder; |
V(CompareNumericAndBranch) \ |
V(CompareHoleAndBranch) \ |
V(CompareGeneric) \ |
+ V(CompareMinusZeroAndBranch) \ |
V(CompareObjectEqAndBranch) \ |
V(CompareMap) \ |
V(Constant) \ |
@@ -4165,6 +4166,28 @@ class HCompareHoleAndBranch V8_FINAL : public HUnaryControlInstruction { |
}; |
+class HCompareMinusZeroAndBranch V8_FINAL : public HUnaryControlInstruction { |
+ public: |
+ DECLARE_INSTRUCTION_FACTORY_P1(HCompareMinusZeroAndBranch, HValue*); |
+ |
+ virtual void InferRepresentation( |
+ HInferRepresentationPhase* h_infer) V8_OVERRIDE; |
+ |
+ virtual Representation RequiredInputRepresentation(int index) V8_OVERRIDE { |
+ return representation(); |
+ } |
+ |
+ virtual bool KnownSuccessorBlock(HBasicBlock** block) V8_OVERRIDE; |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(CompareMinusZeroAndBranch) |
+ |
+ private: |
+ explicit HCompareMinusZeroAndBranch(HValue* value) |
+ : HUnaryControlInstruction(value, NULL, NULL) { |
+ } |
+}; |
+ |
+ |
class HCompareObjectEqAndBranch : public HTemplateControlInstruction<2, 2> { |
public: |
HCompareObjectEqAndBranch(HValue* left, |