diff -r cd0742ba123c -r d6fe2e4959d6 src/cpu/x86/vm/assembler_x86_64.cpp --- a/src/cpu/x86/vm/assembler_x86_64.cpp Thu Mar 20 09:17:30 2008 -0500 +++ b/src/cpu/x86/vm/assembler_x86_64.cpp Fri Mar 21 08:32:17 2008 -0700 @@ -3372,6 +3372,21 @@ emit_byte(0xC0 | encode); } +void Assembler::cvtdq2pd(XMMRegister dst, XMMRegister src) { + emit_byte(0xF3); + int encode = prefix_and_encode(dst->encoding(), src->encoding()); + emit_byte(0x0F); + emit_byte(0xE6); + emit_byte(0xC0 | encode); +} + +void Assembler::cvtdq2ps(XMMRegister dst, XMMRegister src) { + int encode = prefix_and_encode(dst->encoding(), src->encoding()); + emit_byte(0x0F); + emit_byte(0x5B); + emit_byte(0xC0 | encode); +} + void Assembler::cvtsd2ss(XMMRegister dst, XMMRegister src) { emit_byte(0xF2); int encode = prefix_and_encode(dst->encoding(), src->encoding());