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 1043 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1054 void movsd(const Operand& dst, XMMRegister src); | 1054 void movsd(const Operand& dst, XMMRegister src); |
1055 | 1055 |
1056 | 1056 |
1057 void movss(XMMRegister dst, const Operand& src); | 1057 void movss(XMMRegister dst, const Operand& src); |
1058 void movss(const Operand& dst, XMMRegister src); | 1058 void movss(const Operand& dst, XMMRegister src); |
1059 void movss(XMMRegister dst, XMMRegister src) { movss(dst, Operand(src)); } | 1059 void movss(XMMRegister dst, XMMRegister src) { movss(dst, Operand(src)); } |
1060 void extractps(Register dst, XMMRegister src, byte imm8); | 1060 void extractps(Register dst, XMMRegister src, byte imm8); |
1061 | 1061 |
1062 void ptest(XMMRegister dst, XMMRegister src); | 1062 void ptest(XMMRegister dst, XMMRegister src); |
1063 | 1063 |
| 1064 void psllw(XMMRegister reg, int8_t shift); |
1064 void pslld(XMMRegister reg, int8_t shift); | 1065 void pslld(XMMRegister reg, int8_t shift); |
| 1066 void psrlw(XMMRegister reg, int8_t shift); |
1065 void psrld(XMMRegister reg, int8_t shift); | 1067 void psrld(XMMRegister reg, int8_t shift); |
| 1068 void psraw(XMMRegister reg, int8_t shift); |
| 1069 void psrad(XMMRegister reg, int8_t shift); |
1066 void psllq(XMMRegister reg, int8_t shift); | 1070 void psllq(XMMRegister reg, int8_t shift); |
1067 void psllq(XMMRegister dst, XMMRegister src); | 1071 void psllq(XMMRegister dst, XMMRegister src); |
1068 void psrlq(XMMRegister reg, int8_t shift); | 1072 void psrlq(XMMRegister reg, int8_t shift); |
1069 void psrlq(XMMRegister dst, XMMRegister src); | 1073 void psrlq(XMMRegister dst, XMMRegister src); |
1070 void pshufd(XMMRegister dst, XMMRegister src, uint8_t shuffle); | 1074 void pshufd(XMMRegister dst, XMMRegister src, uint8_t shuffle); |
1071 void pextrd(Register dst, XMMRegister src, int8_t offset) { | 1075 void pextrd(Register dst, XMMRegister src, int8_t offset) { |
1072 pextrd(Operand(dst), src, offset); | 1076 pextrd(Operand(dst), src, offset); |
1073 } | 1077 } |
1074 void pextrd(const Operand& dst, XMMRegister src, int8_t offset); | 1078 void pextrd(const Operand& dst, XMMRegister src, int8_t offset); |
1075 void pinsrw(XMMRegister dst, Register src, int8_t offset) { | 1079 void pinsrw(XMMRegister dst, Register src, int8_t offset) { |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1299 vss(0x5f, dst, src1, src2); | 1303 vss(0x5f, dst, src1, src2); |
1300 } | 1304 } |
1301 void vminss(XMMRegister dst, XMMRegister src1, XMMRegister src2) { | 1305 void vminss(XMMRegister dst, XMMRegister src1, XMMRegister src2) { |
1302 vminss(dst, src1, Operand(src2)); | 1306 vminss(dst, src1, Operand(src2)); |
1303 } | 1307 } |
1304 void vminss(XMMRegister dst, XMMRegister src1, const Operand& src2) { | 1308 void vminss(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
1305 vss(0x5d, dst, src1, src2); | 1309 vss(0x5d, dst, src1, src2); |
1306 } | 1310 } |
1307 void vss(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); | 1311 void vss(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); |
1308 | 1312 |
| 1313 void vpsllw(XMMRegister dst, XMMRegister src, int8_t imm8); |
| 1314 void vpslld(XMMRegister dst, XMMRegister src, int8_t imm8); |
| 1315 void vpsrlw(XMMRegister dst, XMMRegister src, int8_t imm8); |
| 1316 void vpsrld(XMMRegister dst, XMMRegister src, int8_t imm8); |
| 1317 void vpsraw(XMMRegister dst, XMMRegister src, int8_t imm8); |
| 1318 void vpsrad(XMMRegister dst, XMMRegister src, int8_t imm8); |
| 1319 |
1309 // BMI instruction | 1320 // BMI instruction |
1310 void andn(Register dst, Register src1, Register src2) { | 1321 void andn(Register dst, Register src1, Register src2) { |
1311 andn(dst, src1, Operand(src2)); | 1322 andn(dst, src1, Operand(src2)); |
1312 } | 1323 } |
1313 void andn(Register dst, Register src1, const Operand& src2) { | 1324 void andn(Register dst, Register src1, const Operand& src2) { |
1314 bmi1(0xf2, dst, src1, src2); | 1325 bmi1(0xf2, dst, src1, src2); |
1315 } | 1326 } |
1316 void bextr(Register dst, Register src1, Register src2) { | 1327 void bextr(Register dst, Register src1, Register src2) { |
1317 bextr(dst, Operand(src1), src2); | 1328 bextr(dst, Operand(src1), src2); |
1318 } | 1329 } |
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1644 Assembler* assembler_; | 1655 Assembler* assembler_; |
1645 #ifdef DEBUG | 1656 #ifdef DEBUG |
1646 int space_before_; | 1657 int space_before_; |
1647 #endif | 1658 #endif |
1648 }; | 1659 }; |
1649 | 1660 |
1650 } // namespace internal | 1661 } // namespace internal |
1651 } // namespace v8 | 1662 } // namespace v8 |
1652 | 1663 |
1653 #endif // V8_IA32_ASSEMBLER_IA32_H_ | 1664 #endif // V8_IA32_ASSEMBLER_IA32_H_ |
OLD | NEW |