| OLD | NEW |
| 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
| 2 // All Rights Reserved. | 2 // All Rights Reserved. |
| 3 // | 3 // |
| 4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
| 5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
| 6 // met: | 6 // met: |
| 7 // | 7 // |
| 8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
| 9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
| 10 // | 10 // |
| (...skipping 1004 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1015 | 1015 |
| 1016 void movmskpd(Register dst, XMMRegister src); | 1016 void movmskpd(Register dst, XMMRegister src); |
| 1017 void movmskps(Register dst, XMMRegister src); | 1017 void movmskps(Register dst, XMMRegister src); |
| 1018 | 1018 |
| 1019 void cmpltsd(XMMRegister dst, XMMRegister src); | 1019 void cmpltsd(XMMRegister dst, XMMRegister src); |
| 1020 void pcmpeqd(XMMRegister dst, XMMRegister src); | 1020 void pcmpeqd(XMMRegister dst, XMMRegister src); |
| 1021 | 1021 |
| 1022 void punpckldq(XMMRegister dst, XMMRegister src); | 1022 void punpckldq(XMMRegister dst, XMMRegister src); |
| 1023 void punpckhdq(XMMRegister dst, XMMRegister src); | 1023 void punpckhdq(XMMRegister dst, XMMRegister src); |
| 1024 | 1024 |
| 1025 void maxsd(XMMRegister dst, XMMRegister src) { maxsd(dst, Operand(src)); } |
| 1026 void maxsd(XMMRegister dst, const Operand& src); |
| 1027 void minsd(XMMRegister dst, XMMRegister src) { minsd(dst, Operand(src)); } |
| 1028 void minsd(XMMRegister dst, const Operand& src); |
| 1029 |
| 1025 void movdqa(XMMRegister dst, const Operand& src); | 1030 void movdqa(XMMRegister dst, const Operand& src); |
| 1026 void movdqa(const Operand& dst, XMMRegister src); | 1031 void movdqa(const Operand& dst, XMMRegister src); |
| 1027 void movdqu(XMMRegister dst, const Operand& src); | 1032 void movdqu(XMMRegister dst, const Operand& src); |
| 1028 void movdqu(const Operand& dst, XMMRegister src); | 1033 void movdqu(const Operand& dst, XMMRegister src); |
| 1029 void movdq(bool aligned, XMMRegister dst, const Operand& src) { | 1034 void movdq(bool aligned, XMMRegister dst, const Operand& src) { |
| 1030 if (aligned) { | 1035 if (aligned) { |
| 1031 movdqa(dst, src); | 1036 movdqa(dst, src); |
| 1032 } else { | 1037 } else { |
| 1033 movdqu(dst, src); | 1038 movdqu(dst, src); |
| 1034 } | 1039 } |
| (...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1239 } | 1244 } |
| 1240 void vmulsd(XMMRegister dst, XMMRegister src1, const Operand& src2) { | 1245 void vmulsd(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
| 1241 vsd(0x59, dst, src1, src2); | 1246 vsd(0x59, dst, src1, src2); |
| 1242 } | 1247 } |
| 1243 void vdivsd(XMMRegister dst, XMMRegister src1, XMMRegister src2) { | 1248 void vdivsd(XMMRegister dst, XMMRegister src1, XMMRegister src2) { |
| 1244 vdivsd(dst, src1, Operand(src2)); | 1249 vdivsd(dst, src1, Operand(src2)); |
| 1245 } | 1250 } |
| 1246 void vdivsd(XMMRegister dst, XMMRegister src1, const Operand& src2) { | 1251 void vdivsd(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
| 1247 vsd(0x5e, dst, src1, src2); | 1252 vsd(0x5e, dst, src1, src2); |
| 1248 } | 1253 } |
| 1254 void vmaxsd(XMMRegister dst, XMMRegister src1, XMMRegister src2) { |
| 1255 vmaxsd(dst, src1, Operand(src2)); |
| 1256 } |
| 1257 void vmaxsd(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
| 1258 vsd(0x5f, dst, src1, src2); |
| 1259 } |
| 1260 void vminsd(XMMRegister dst, XMMRegister src1, XMMRegister src2) { |
| 1261 vminsd(dst, src1, Operand(src2)); |
| 1262 } |
| 1263 void vminsd(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
| 1264 vsd(0x5d, dst, src1, src2); |
| 1265 } |
| 1249 void vsd(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); | 1266 void vsd(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); |
| 1250 | 1267 |
| 1251 // Prefetch src position into cache level. | 1268 // Prefetch src position into cache level. |
| 1252 // Level 1, 2 or 3 specifies CPU cache level. Level 0 specifies a | 1269 // Level 1, 2 or 3 specifies CPU cache level. Level 0 specifies a |
| 1253 // non-temporal | 1270 // non-temporal |
| 1254 void prefetch(const Operand& src, int level); | 1271 void prefetch(const Operand& src, int level); |
| 1255 // TODO(lrn): Need SFENCE for movnt? | 1272 // TODO(lrn): Need SFENCE for movnt? |
| 1256 | 1273 |
| 1257 // Check the code size generated from label to here. | 1274 // Check the code size generated from label to here. |
| 1258 int SizeOfCodeGeneratedSince(Label* label) { | 1275 int SizeOfCodeGeneratedSince(Label* label) { |
| (...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1417 private: | 1434 private: |
| 1418 Assembler* assembler_; | 1435 Assembler* assembler_; |
| 1419 #ifdef DEBUG | 1436 #ifdef DEBUG |
| 1420 int space_before_; | 1437 int space_before_; |
| 1421 #endif | 1438 #endif |
| 1422 }; | 1439 }; |
| 1423 | 1440 |
| 1424 } } // namespace v8::internal | 1441 } } // namespace v8::internal |
| 1425 | 1442 |
| 1426 #endif // V8_IA32_ASSEMBLER_IA32_H_ | 1443 #endif // V8_IA32_ASSEMBLER_IA32_H_ |
| OLD | NEW |