Index: src/arm/lithium-arm.h |
diff --git a/src/arm/lithium-arm.h b/src/arm/lithium-arm.h |
index d81dc0f57cde1ea708f7a582e3d2fb830571752a..c727fa748ba004b282ba21f3f7929fc39ae162ca 100644 |
--- a/src/arm/lithium-arm.h |
+++ b/src/arm/lithium-arm.h |
@@ -184,6 +184,7 @@ class LCodeGen; |
V(Typeof) \ |
V(TypeofIsAndBranch) \ |
V(Uint32ToDouble) \ |
+ V(Uint32ToSmi) \ |
V(UnknownOSRValue) \ |
V(ValueOf) \ |
V(WrapReceiver) |
@@ -1987,6 +1988,19 @@ class LUint32ToDouble: public LTemplateInstruction<1, 1, 0> { |
}; |
+class LUint32ToSmi: public LTemplateInstruction<1, 1, 0> { |
+ public: |
+ explicit LUint32ToSmi(LOperand* value) { |
+ inputs_[0] = value; |
+ } |
+ |
+ LOperand* value() { return inputs_[0]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(Uint32ToSmi, "uint32-to-smi") |
+ DECLARE_HYDROGEN_ACCESSOR(Change) |
+}; |
+ |
+ |
class LNumberTagI: public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LNumberTagI(LOperand* value) { |