1.1 --- a/src/cpu/x86/vm/assembler_x86.hpp Thu Dec 02 17:21:12 2010 -0800 1.2 +++ b/src/cpu/x86/vm/assembler_x86.hpp Fri Dec 03 01:34:31 2010 -0800 1.3 @@ -1353,6 +1353,10 @@ 1.4 void sqrtsd(XMMRegister dst, Address src); 1.5 void sqrtsd(XMMRegister dst, XMMRegister src); 1.6 1.7 + // Compute Square Root of Scalar Single-Precision Floating-Point Value 1.8 + void sqrtss(XMMRegister dst, Address src); 1.9 + void sqrtss(XMMRegister dst, XMMRegister src); 1.10 + 1.11 void std() { emit_byte(0xfd); } 1.12 1.13 void stmxcsr( Address dst ); 1.14 @@ -2125,6 +2129,9 @@ 1.15 void comisd(XMMRegister dst, Address src) { Assembler::comisd(dst, src); } 1.16 void comisd(XMMRegister dst, AddressLiteral src); 1.17 1.18 + void fadd_s(Address src) { Assembler::fadd_s(src); } 1.19 + void fadd_s(AddressLiteral src) { Assembler::fadd_s(as_Address(src)); } 1.20 + 1.21 void fldcw(Address src) { Assembler::fldcw(src); } 1.22 void fldcw(AddressLiteral src); 1.23 1.24 @@ -2138,6 +2145,9 @@ 1.25 void fld_x(Address src) { Assembler::fld_x(src); } 1.26 void fld_x(AddressLiteral src); 1.27 1.28 + void fmul_s(Address src) { Assembler::fmul_s(src); } 1.29 + void fmul_s(AddressLiteral src) { Assembler::fmul_s(as_Address(src)); } 1.30 + 1.31 void ldmxcsr(Address src) { Assembler::ldmxcsr(src); } 1.32 void ldmxcsr(AddressLiteral src); 1.33 1.34 @@ -2154,10 +2164,50 @@ 1.35 1.36 public: 1.37 1.38 - void movsd(XMMRegister dst, XMMRegister src) { Assembler::movsd(dst, src); } 1.39 - void movsd(Address dst, XMMRegister src) { Assembler::movsd(dst, src); } 1.40 - void movsd(XMMRegister dst, Address src) { Assembler::movsd(dst, src); } 1.41 - void movsd(XMMRegister dst, AddressLiteral src); 1.42 + void addsd(XMMRegister dst, XMMRegister src) { Assembler::addsd(dst, src); } 1.43 + void addsd(XMMRegister dst, Address src) { Assembler::addsd(dst, src); } 1.44 + void addsd(XMMRegister dst, AddressLiteral src) { Assembler::addsd(dst, as_Address(src)); } 1.45 + 1.46 + void addss(XMMRegister dst, XMMRegister src) { Assembler::addss(dst, src); } 1.47 + void addss(XMMRegister dst, Address src) { Assembler::addss(dst, src); } 1.48 + void addss(XMMRegister dst, AddressLiteral src) { Assembler::addss(dst, as_Address(src)); } 1.49 + 1.50 + void divsd(XMMRegister dst, XMMRegister src) { Assembler::divsd(dst, src); } 1.51 + void divsd(XMMRegister dst, Address src) { Assembler::divsd(dst, src); } 1.52 + void divsd(XMMRegister dst, AddressLiteral src) { Assembler::divsd(dst, as_Address(src)); } 1.53 + 1.54 + void divss(XMMRegister dst, XMMRegister src) { Assembler::divss(dst, src); } 1.55 + void divss(XMMRegister dst, Address src) { Assembler::divss(dst, src); } 1.56 + void divss(XMMRegister dst, AddressLiteral src) { Assembler::divss(dst, as_Address(src)); } 1.57 + 1.58 + void movsd(XMMRegister dst, XMMRegister src) { Assembler::movsd(dst, src); } 1.59 + void movsd(Address dst, XMMRegister src) { Assembler::movsd(dst, src); } 1.60 + void movsd(XMMRegister dst, Address src) { Assembler::movsd(dst, src); } 1.61 + void movsd(XMMRegister dst, AddressLiteral src) { Assembler::movsd(dst, as_Address(src)); } 1.62 + 1.63 + void mulsd(XMMRegister dst, XMMRegister src) { Assembler::mulsd(dst, src); } 1.64 + void mulsd(XMMRegister dst, Address src) { Assembler::mulsd(dst, src); } 1.65 + void mulsd(XMMRegister dst, AddressLiteral src) { Assembler::mulsd(dst, as_Address(src)); } 1.66 + 1.67 + void mulss(XMMRegister dst, XMMRegister src) { Assembler::mulss(dst, src); } 1.68 + void mulss(XMMRegister dst, Address src) { Assembler::mulss(dst, src); } 1.69 + void mulss(XMMRegister dst, AddressLiteral src) { Assembler::mulss(dst, as_Address(src)); } 1.70 + 1.71 + void sqrtsd(XMMRegister dst, XMMRegister src) { Assembler::sqrtsd(dst, src); } 1.72 + void sqrtsd(XMMRegister dst, Address src) { Assembler::sqrtsd(dst, src); } 1.73 + void sqrtsd(XMMRegister dst, AddressLiteral src) { Assembler::sqrtsd(dst, as_Address(src)); } 1.74 + 1.75 + void sqrtss(XMMRegister dst, XMMRegister src) { Assembler::sqrtss(dst, src); } 1.76 + void sqrtss(XMMRegister dst, Address src) { Assembler::sqrtss(dst, src); } 1.77 + void sqrtss(XMMRegister dst, AddressLiteral src) { Assembler::sqrtss(dst, as_Address(src)); } 1.78 + 1.79 + void subsd(XMMRegister dst, XMMRegister src) { Assembler::subsd(dst, src); } 1.80 + void subsd(XMMRegister dst, Address src) { Assembler::subsd(dst, src); } 1.81 + void subsd(XMMRegister dst, AddressLiteral src) { Assembler::subsd(dst, as_Address(src)); } 1.82 + 1.83 + void subss(XMMRegister dst, XMMRegister src) { Assembler::subss(dst, src); } 1.84 + void subss(XMMRegister dst, Address src) { Assembler::subss(dst, src); } 1.85 + void subss(XMMRegister dst, AddressLiteral src) { Assembler::subss(dst, as_Address(src)); } 1.86 1.87 void ucomiss(XMMRegister dst, XMMRegister src) { Assembler::ucomiss(dst, src); } 1.88 void ucomiss(XMMRegister dst, Address src) { Assembler::ucomiss(dst, src); }