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 1513 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1524 } | 1524 } |
1525 void vmovss(const Operand& dst, XMMRegister src) { | 1525 void vmovss(const Operand& dst, XMMRegister src) { |
1526 vss(0x11, src, xmm0, dst); | 1526 vss(0x11, src, xmm0, dst); |
1527 } | 1527 } |
1528 void vucomiss(XMMRegister dst, XMMRegister src); | 1528 void vucomiss(XMMRegister dst, XMMRegister src); |
1529 void vucomiss(XMMRegister dst, const Operand& src); | 1529 void vucomiss(XMMRegister dst, const Operand& src); |
1530 void vss(byte op, XMMRegister dst, XMMRegister src1, XMMRegister src2); | 1530 void vss(byte op, XMMRegister dst, XMMRegister src1, XMMRegister src2); |
1531 void vss(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); | 1531 void vss(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); |
1532 | 1532 |
1533 void vmovaps(XMMRegister dst, XMMRegister src) { vps(0x28, dst, xmm0, src); } | 1533 void vmovaps(XMMRegister dst, XMMRegister src) { vps(0x28, dst, xmm0, src); } |
| 1534 void vmovups(XMMRegister dst, XMMRegister src) { vps(0x10, dst, xmm0, src); } |
| 1535 void vmovups(XMMRegister dst, const Operand& src) { |
| 1536 vps(0x11, dst, xmm0, src); |
| 1537 } |
| 1538 void vmovups(const Operand& dst, XMMRegister src) { |
| 1539 vps(0x11, dst, xmm0, src); |
| 1540 } |
1534 void vmovapd(XMMRegister dst, XMMRegister src) { vpd(0x28, dst, xmm0, src); } | 1541 void vmovapd(XMMRegister dst, XMMRegister src) { vpd(0x28, dst, xmm0, src); } |
1535 void vmovmskpd(Register dst, XMMRegister src) { | 1542 void vmovmskpd(Register dst, XMMRegister src) { |
1536 XMMRegister idst = {dst.code()}; | 1543 XMMRegister idst = {dst.code()}; |
1537 vpd(0x50, idst, xmm0, src); | 1544 vpd(0x50, idst, xmm0, src); |
1538 } | 1545 } |
1539 | 1546 |
1540 void vps(byte op, XMMRegister dst, XMMRegister src1, XMMRegister src2); | 1547 void vps(byte op, XMMRegister dst, XMMRegister src1, XMMRegister src2); |
1541 void vps(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); | 1548 void vps(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); |
| 1549 void vps(byte op, const Operand& dst, XMMRegister src1, XMMRegister src2); |
1542 void vpd(byte op, XMMRegister dst, XMMRegister src1, XMMRegister src2); | 1550 void vpd(byte op, XMMRegister dst, XMMRegister src1, XMMRegister src2); |
1543 void vpd(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); | 1551 void vpd(byte op, XMMRegister dst, XMMRegister src1, const Operand& src2); |
1544 | 1552 |
1545 // BMI instruction | 1553 // BMI instruction |
1546 void andnq(Register dst, Register src1, Register src2) { | 1554 void andnq(Register dst, Register src1, Register src2) { |
1547 bmi1q(0xf2, dst, src1, src2); | 1555 bmi1q(0xf2, dst, src1, src2); |
1548 } | 1556 } |
1549 void andnq(Register dst, Register src1, const Operand& src2) { | 1557 void andnq(Register dst, Register src1, const Operand& src2) { |
1550 bmi1q(0xf2, dst, src1, src2); | 1558 bmi1q(0xf2, dst, src1, src2); |
1551 } | 1559 } |
(...skipping 719 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2271 Assembler* assembler_; | 2279 Assembler* assembler_; |
2272 #ifdef DEBUG | 2280 #ifdef DEBUG |
2273 int space_before_; | 2281 int space_before_; |
2274 #endif | 2282 #endif |
2275 }; | 2283 }; |
2276 | 2284 |
2277 } // namespace internal | 2285 } // namespace internal |
2278 } // namespace v8 | 2286 } // namespace v8 |
2279 | 2287 |
2280 #endif // V8_X64_ASSEMBLER_X64_H_ | 2288 #endif // V8_X64_ASSEMBLER_X64_H_ |
OLD | NEW |