Index: runtime/vm/assembler_ia32.cc |
diff --git a/runtime/vm/assembler_ia32.cc b/runtime/vm/assembler_ia32.cc |
index 219ae742ffbd7f40a841db3fad87272961138000..240c2cfc7d0cf2d8d44562b1a0ec59921f1007cc 100644 |
--- a/runtime/vm/assembler_ia32.cc |
+++ b/runtime/vm/assembler_ia32.cc |
@@ -426,6 +426,14 @@ void Assembler::movsd(XmmRegister dst, XmmRegister src) { |
} |
+void Assembler::movaps(XmmRegister dst, XmmRegister src) { |
+ AssemblerBuffer::EnsureCapacity ensured(&buffer_); |
+ EmitUint8(0x0F); |
+ EmitUint8(0x28); |
+ EmitXmmRegisterOperand(dst, src); |
+} |
+ |
+ |
void Assembler::addsd(XmmRegister dst, XmmRegister src) { |
AssemblerBuffer::EnsureCapacity ensured(&buffer_); |
EmitUint8(0xF2); |
@@ -1790,6 +1798,17 @@ const char* Assembler::RegisterName(Register reg) { |
} |
+static const char* xmm_reg_names[kNumberOfXmmRegisters] = { |
+ "xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7" |
+}; |
+ |
+ |
+const char* Assembler::XmmRegisterName(XmmRegister reg) { |
+ ASSERT((0 <= reg) && (reg < kNumberOfXmmRegisters)); |
+ return xmm_reg_names[reg]; |
+} |
+ |
+ |
} // namespace dart |
#endif // defined TARGET_ARCH_IA32 |