Index: src/x64/macro-assembler-x64.h |
diff --git a/src/x64/macro-assembler-x64.h b/src/x64/macro-assembler-x64.h |
index 0acce0543c4b8d7d15936a66c301fc1d62fb40a6..1c6b6477be9c295b41171f42a2514f6f886a9996 100644 |
--- a/src/x64/macro-assembler-x64.h |
+++ b/src/x64/macro-assembler-x64.h |
@@ -203,6 +203,9 @@ class MacroAssembler: public Assembler { |
// NOTICE: Destroys the dst register even if unsuccessful! |
void Integer32ToSmi(Register dst, Register src, Label* on_overflow); |
+ // Stores an integer32 value into a memory field that already holds a smi. |
+ void Integer32ToSmiField(const Operand& dst, Register src); |
+ |
// Adds constant to src and tags the result as a smi. |
// Result must be a valid smi. |
void Integer64PlusConstantToSmi(Register dst, Register src, int constant); |
@@ -214,6 +217,7 @@ class MacroAssembler: public Assembler { |
// Convert smi to 64-bit integer (sign extended if necessary). |
void SmiToInteger64(Register dst, Register src); |
+ void SmiToInteger64(Register dst, const Operand& src); |
// Multiply a positive smi's integer value by a power of two. |
// Provides result as 64-bit integer value. |
@@ -234,6 +238,8 @@ class MacroAssembler: public Assembler { |
void SmiCompare(Register dst, const Operand& src); |
void SmiCompare(const Operand& dst, Register src); |
void SmiCompare(const Operand& dst, Smi* src); |
+ // Compare the int32 in src register to the value of the smi stored at dst. |
+ void SmiCompareInteger32(const Operand& dst, Register src); |
// Sets sign and zero flags depending on value of smi in register. |
void SmiTest(Register src); |