Index: src/x64/lithium-x64.h |
diff --git a/src/x64/lithium-x64.h b/src/x64/lithium-x64.h |
index 50e32d8cd61ee999fd915aed6ddd4dc3ce0b3d07..f42b5dc9702f84c8a0d8448baa0114f14346ee6c 100644 |
--- a/src/x64/lithium-x64.h |
+++ b/src/x64/lithium-x64.h |
@@ -1926,6 +1926,7 @@ class LUint32ToDouble: public LTemplateInstruction<1, 1, 1> { |
}; |
+#if !V8_USE_31_BITS_SMI_VALUE |
class LNumberTagI: public LTemplateInstruction<1, 1, 0> { |
public: |
explicit LNumberTagI(LOperand* value) { |
@@ -1936,6 +1937,20 @@ class LNumberTagI: public LTemplateInstruction<1, 1, 0> { |
DECLARE_CONCRETE_INSTRUCTION(NumberTagI, "number-tag-i") |
}; |
+#else |
+class LNumberTagI: public LTemplateInstruction<1, 1, 1> { |
+ public: |
+ explicit LNumberTagI(LOperand* value, LOperand* temp) { |
+ inputs_[0] = value; |
+ temps_[0] = temp; |
+ } |
+ |
+ LOperand* value() { return inputs_[0]; } |
+ LOperand* temp() { return temps_[0]; } |
+ |
+ DECLARE_CONCRETE_INSTRUCTION(NumberTagI, "number-tag-i") |
+}; |
+#endif |
class LNumberTagU: public LTemplateInstruction<1, 1, 1> { |