Index: src/hydrogen-instructions.h |
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
index b7d5d6b616f8d5489b131e33582a006728db9e83..299aa76f449928f9cfc5944354155bb7dc4e8139 100644 |
--- a/src/hydrogen-instructions.h |
+++ b/src/hydrogen-instructions.h |
@@ -104,6 +104,7 @@ class LChunkBuilder; |
V(Goto) \ |
V(HasInstanceType) \ |
V(HasCachedArrayIndex) \ |
+ V(In) \ |
V(InstanceOf) \ |
V(InstanceOfKnownGlobal) \ |
V(InvokeFunction) \ |
@@ -3780,6 +3781,28 @@ class HDeleteProperty: public HBinaryOperation { |
HValue* key() { return right(); } |
}; |
+ |
+class HIn: public HTemplateInstruction<2> { |
+ public: |
+ HIn(HValue* key, HValue* object) { |
+ SetOperandAt(0, key); |
+ SetOperandAt(1, object); |
+ set_representation(Representation::Tagged()); |
+ SetAllSideEffects(); |
+ } |
+ |
+ HValue* key() { return OperandAt(0); } |
+ HValue* object() { return OperandAt(1); } |
+ |
+ virtual Representation RequiredInputRepresentation(int index) const { |
+ return Representation::Tagged(); |
+ } |
+ |
fschneider
2011/04/26 13:51:59
You should override CalculateInferredType to retur
|
+ virtual void PrintDataTo(StringStream* stream); |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(In) |
+}; |
+ |
#undef DECLARE_INSTRUCTION |
#undef DECLARE_CONCRETE_INSTRUCTION |