hotspot/src/cpu/x86/vm/assembler_x86.hpp
changeset 7433 b418028612ad
parent 7427 d7b79a367474
child 7724 a92d706dbdd5
equal deleted inserted replaced
7432:f06f1253c317 7433:b418028612ad
  1351 
  1351 
  1352   // Compute Square Root of Scalar Double-Precision Floating-Point Value
  1352   // Compute Square Root of Scalar Double-Precision Floating-Point Value
  1353   void sqrtsd(XMMRegister dst, Address src);
  1353   void sqrtsd(XMMRegister dst, Address src);
  1354   void sqrtsd(XMMRegister dst, XMMRegister src);
  1354   void sqrtsd(XMMRegister dst, XMMRegister src);
  1355 
  1355 
       
  1356   // Compute Square Root of Scalar Single-Precision Floating-Point Value
       
  1357   void sqrtss(XMMRegister dst, Address src);
       
  1358   void sqrtss(XMMRegister dst, XMMRegister src);
       
  1359 
  1356   void std() { emit_byte(0xfd); }
  1360   void std() { emit_byte(0xfd); }
  1357 
  1361 
  1358   void stmxcsr( Address dst );
  1362   void stmxcsr( Address dst );
  1359 
  1363 
  1360   void subl(Address dst, int32_t imm32);
  1364   void subl(Address dst, int32_t imm32);
  2123   void comiss(XMMRegister dst, AddressLiteral src);
  2127   void comiss(XMMRegister dst, AddressLiteral src);
  2124 
  2128 
  2125   void comisd(XMMRegister dst, Address src) { Assembler::comisd(dst, src); }
  2129   void comisd(XMMRegister dst, Address src) { Assembler::comisd(dst, src); }
  2126   void comisd(XMMRegister dst, AddressLiteral src);
  2130   void comisd(XMMRegister dst, AddressLiteral src);
  2127 
  2131 
       
  2132   void fadd_s(Address src)        { Assembler::fadd_s(src); }
       
  2133   void fadd_s(AddressLiteral src) { Assembler::fadd_s(as_Address(src)); }
       
  2134 
  2128   void fldcw(Address src) { Assembler::fldcw(src); }
  2135   void fldcw(Address src) { Assembler::fldcw(src); }
  2129   void fldcw(AddressLiteral src);
  2136   void fldcw(AddressLiteral src);
  2130 
  2137 
  2131   void fld_s(int index)   { Assembler::fld_s(index); }
  2138   void fld_s(int index)   { Assembler::fld_s(index); }
  2132   void fld_s(Address src) { Assembler::fld_s(src); }
  2139   void fld_s(Address src) { Assembler::fld_s(src); }
  2135   void fld_d(Address src) { Assembler::fld_d(src); }
  2142   void fld_d(Address src) { Assembler::fld_d(src); }
  2136   void fld_d(AddressLiteral src);
  2143   void fld_d(AddressLiteral src);
  2137 
  2144 
  2138   void fld_x(Address src) { Assembler::fld_x(src); }
  2145   void fld_x(Address src) { Assembler::fld_x(src); }
  2139   void fld_x(AddressLiteral src);
  2146   void fld_x(AddressLiteral src);
       
  2147 
       
  2148   void fmul_s(Address src)        { Assembler::fmul_s(src); }
       
  2149   void fmul_s(AddressLiteral src) { Assembler::fmul_s(as_Address(src)); }
  2140 
  2150 
  2141   void ldmxcsr(Address src) { Assembler::ldmxcsr(src); }
  2151   void ldmxcsr(Address src) { Assembler::ldmxcsr(src); }
  2142   void ldmxcsr(AddressLiteral src);
  2152   void ldmxcsr(AddressLiteral src);
  2143 
  2153 
  2144 private:
  2154 private:
  2152   void movlpd(XMMRegister dst, Address src)      {Assembler::movlpd(dst, src); }
  2162   void movlpd(XMMRegister dst, Address src)      {Assembler::movlpd(dst, src); }
  2153   void movlpd(XMMRegister dst, AddressLiteral src);
  2163   void movlpd(XMMRegister dst, AddressLiteral src);
  2154 
  2164 
  2155 public:
  2165 public:
  2156 
  2166 
  2157   void movsd(XMMRegister dst, XMMRegister src) { Assembler::movsd(dst, src); }
  2167   void addsd(XMMRegister dst, XMMRegister src)    { Assembler::addsd(dst, src); }
  2158   void movsd(Address dst, XMMRegister src)     { Assembler::movsd(dst, src); }
  2168   void addsd(XMMRegister dst, Address src)        { Assembler::addsd(dst, src); }
  2159   void movsd(XMMRegister dst, Address src)     { Assembler::movsd(dst, src); }
  2169   void addsd(XMMRegister dst, AddressLiteral src) { Assembler::addsd(dst, as_Address(src)); }
  2160   void movsd(XMMRegister dst, AddressLiteral src);
  2170 
       
  2171   void addss(XMMRegister dst, XMMRegister src)    { Assembler::addss(dst, src); }
       
  2172   void addss(XMMRegister dst, Address src)        { Assembler::addss(dst, src); }
       
  2173   void addss(XMMRegister dst, AddressLiteral src) { Assembler::addss(dst, as_Address(src)); }
       
  2174 
       
  2175   void divsd(XMMRegister dst, XMMRegister src)    { Assembler::divsd(dst, src); }
       
  2176   void divsd(XMMRegister dst, Address src)        { Assembler::divsd(dst, src); }
       
  2177   void divsd(XMMRegister dst, AddressLiteral src) { Assembler::divsd(dst, as_Address(src)); }
       
  2178 
       
  2179   void divss(XMMRegister dst, XMMRegister src)    { Assembler::divss(dst, src); }
       
  2180   void divss(XMMRegister dst, Address src)        { Assembler::divss(dst, src); }
       
  2181   void divss(XMMRegister dst, AddressLiteral src) { Assembler::divss(dst, as_Address(src)); }
       
  2182 
       
  2183   void movsd(XMMRegister dst, XMMRegister src)    { Assembler::movsd(dst, src); }
       
  2184   void movsd(Address dst, XMMRegister src)        { Assembler::movsd(dst, src); }
       
  2185   void movsd(XMMRegister dst, Address src)        { Assembler::movsd(dst, src); }
       
  2186   void movsd(XMMRegister dst, AddressLiteral src) { Assembler::movsd(dst, as_Address(src)); }
       
  2187 
       
  2188   void mulsd(XMMRegister dst, XMMRegister src)    { Assembler::mulsd(dst, src); }
       
  2189   void mulsd(XMMRegister dst, Address src)        { Assembler::mulsd(dst, src); }
       
  2190   void mulsd(XMMRegister dst, AddressLiteral src) { Assembler::mulsd(dst, as_Address(src)); }
       
  2191 
       
  2192   void mulss(XMMRegister dst, XMMRegister src)    { Assembler::mulss(dst, src); }
       
  2193   void mulss(XMMRegister dst, Address src)        { Assembler::mulss(dst, src); }
       
  2194   void mulss(XMMRegister dst, AddressLiteral src) { Assembler::mulss(dst, as_Address(src)); }
       
  2195 
       
  2196   void sqrtsd(XMMRegister dst, XMMRegister src)    { Assembler::sqrtsd(dst, src); }
       
  2197   void sqrtsd(XMMRegister dst, Address src)        { Assembler::sqrtsd(dst, src); }
       
  2198   void sqrtsd(XMMRegister dst, AddressLiteral src) { Assembler::sqrtsd(dst, as_Address(src)); }
       
  2199 
       
  2200   void sqrtss(XMMRegister dst, XMMRegister src)    { Assembler::sqrtss(dst, src); }
       
  2201   void sqrtss(XMMRegister dst, Address src)        { Assembler::sqrtss(dst, src); }
       
  2202   void sqrtss(XMMRegister dst, AddressLiteral src) { Assembler::sqrtss(dst, as_Address(src)); }
       
  2203 
       
  2204   void subsd(XMMRegister dst, XMMRegister src)    { Assembler::subsd(dst, src); }
       
  2205   void subsd(XMMRegister dst, Address src)        { Assembler::subsd(dst, src); }
       
  2206   void subsd(XMMRegister dst, AddressLiteral src) { Assembler::subsd(dst, as_Address(src)); }
       
  2207 
       
  2208   void subss(XMMRegister dst, XMMRegister src)    { Assembler::subss(dst, src); }
       
  2209   void subss(XMMRegister dst, Address src)        { Assembler::subss(dst, src); }
       
  2210   void subss(XMMRegister dst, AddressLiteral src) { Assembler::subss(dst, as_Address(src)); }
  2161 
  2211 
  2162   void ucomiss(XMMRegister dst, XMMRegister src) { Assembler::ucomiss(dst, src); }
  2212   void ucomiss(XMMRegister dst, XMMRegister src) { Assembler::ucomiss(dst, src); }
  2163   void ucomiss(XMMRegister dst, Address src) { Assembler::ucomiss(dst, src); }
  2213   void ucomiss(XMMRegister dst, Address src) { Assembler::ucomiss(dst, src); }
  2164   void ucomiss(XMMRegister dst, AddressLiteral src);
  2214   void ucomiss(XMMRegister dst, AddressLiteral src);
  2165 
  2215