Index: src/ia32/lithium-ia32.h |
diff --git a/src/ia32/lithium-ia32.h b/src/ia32/lithium-ia32.h |
index dbe54bddaf7cbbe8e6ffb24c511b1dc9423031c7..ff4c477bc7844d3919226e9873aef5eb892d687f 100644 |
--- a/src/ia32/lithium-ia32.h |
+++ b/src/ia32/lithium-ia32.h |
@@ -102,6 +102,7 @@ class LCodeGen; |
V(In) \ |
V(InstanceOf) \ |
V(InstanceOfKnownGlobal) \ |
+ V(InstanceSize) \ |
V(InstructionGap) \ |
V(Integer32ToDouble) \ |
V(Uint32ToDouble) \ |
@@ -969,6 +970,19 @@ class LInstanceOfKnownGlobal: public LTemplateInstruction<1, 2, 1> { |
}; |
+class LInstanceSize: public LTemplateInstruction<1, 1, 0> { |
+ public: |
+ explicit LInstanceSize(LOperand* object) { |
+ inputs_[0] = object; |
+ } |
+ |
+ LOperand* object() { return inputs_[0]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(InstanceSize, "instance-size") |
+ DECLARE_HYDROGEN_ACCESSOR(InstanceSize) |
+}; |
+ |
+ |
class LBoundsCheck: public LTemplateInstruction<0, 2, 0> { |
public: |
LBoundsCheck(LOperand* index, LOperand* length) { |