src/cpu/x86/vm/assembler_x86_32.cpp

changeset 506
3d62cb85208d
parent 435
a61af66fc99e
child 552
deadee49286e
     1.1 --- a/src/cpu/x86/vm/assembler_x86_32.cpp	Wed Mar 19 15:14:36 2008 -0700
     1.2 +++ b/src/cpu/x86/vm/assembler_x86_32.cpp	Wed Mar 19 15:33:25 2008 -0700
     1.3 @@ -2672,6 +2672,22 @@
     1.4    emit_sse_operand(dst, src);
     1.5  }
     1.6  
     1.7 +void Assembler::cvtdq2pd(XMMRegister dst, XMMRegister src) {
     1.8 +  assert(VM_Version::supports_sse2(), "");
     1.9 +
    1.10 +  emit_byte(0xF3);
    1.11 +  emit_byte(0x0F);
    1.12 +  emit_byte(0xE6);
    1.13 +  emit_sse_operand(dst, src);
    1.14 +}
    1.15 +
    1.16 +void Assembler::cvtdq2ps(XMMRegister dst, XMMRegister src) {
    1.17 +  assert(VM_Version::supports_sse2(), "");
    1.18 +
    1.19 +  emit_byte(0x0F);
    1.20 +  emit_byte(0x5B);
    1.21 +  emit_sse_operand(dst, src);
    1.22 +}
    1.23  
    1.24  emit_sse_instruction(andps,  sse,  0,    0x54, XMMRegister, XMMRegister);
    1.25  emit_sse_instruction(andpd,  sse2, 0x66, 0x54, XMMRegister, XMMRegister);

mercurial