comparison src/cpu/x86/vm/assembler_x86.hpp @ 2008:2f644f85485d

6961690: load oops from constant table on SPARC Summary: oops should be loaded from the constant table of an nmethod instead of materializing them with a long code sequence. Reviewed-by: never, kvn
author twisti
date Fri, 03 Dec 2010 01:34:31 -0800
parents ac637b7220d1
children b1a2afa37ec4
comparison
equal deleted inserted replaced
2007:5ddfcf4b079e 2008:2f644f85485d
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