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 1007 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1018 // Use movaps when moving float values and movd for integer | 1018 // Use movaps when moving float values and movd for integer |
1019 // values in xmm registers. | 1019 // values in xmm registers. |
1020 void movss(XMMRegister dst, XMMRegister src); | 1020 void movss(XMMRegister dst, XMMRegister src); |
1021 | 1021 |
1022 void movss(XMMRegister dst, const Operand& src); | 1022 void movss(XMMRegister dst, const Operand& src); |
1023 void movss(const Operand& dst, XMMRegister src); | 1023 void movss(const Operand& dst, XMMRegister src); |
1024 void shufps(XMMRegister dst, XMMRegister src, byte imm8); | 1024 void shufps(XMMRegister dst, XMMRegister src, byte imm8); |
1025 | 1025 |
1026 void cvttss2si(Register dst, const Operand& src); | 1026 void cvttss2si(Register dst, const Operand& src); |
1027 void cvttss2si(Register dst, XMMRegister src); | 1027 void cvttss2si(Register dst, XMMRegister src); |
| 1028 void cvtlsi2ss(XMMRegister dst, const Operand& src); |
1028 void cvtlsi2ss(XMMRegister dst, Register src); | 1029 void cvtlsi2ss(XMMRegister dst, Register src); |
1029 | 1030 |
1030 void andps(XMMRegister dst, XMMRegister src); | 1031 void andps(XMMRegister dst, XMMRegister src); |
1031 void andps(XMMRegister dst, const Operand& src); | 1032 void andps(XMMRegister dst, const Operand& src); |
1032 void orps(XMMRegister dst, XMMRegister src); | 1033 void orps(XMMRegister dst, XMMRegister src); |
1033 void orps(XMMRegister dst, const Operand& src); | 1034 void orps(XMMRegister dst, const Operand& src); |
1034 void xorps(XMMRegister dst, XMMRegister src); | 1035 void xorps(XMMRegister dst, XMMRegister src); |
1035 void xorps(XMMRegister dst, const Operand& src); | 1036 void xorps(XMMRegister dst, const Operand& src); |
1036 | 1037 |
1037 void addps(XMMRegister dst, XMMRegister src); | 1038 void addps(XMMRegister dst, XMMRegister src); |
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1363 void vcvtss2sd(XMMRegister dst, XMMRegister src1, const Operand& src2) { | 1364 void vcvtss2sd(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
1364 vsd(0x5a, dst, src1, src2, kF3, k0F, kWIG); | 1365 vsd(0x5a, dst, src1, src2, kF3, k0F, kWIG); |
1365 } | 1366 } |
1366 void vcvtlsi2sd(XMMRegister dst, XMMRegister src1, Register src2) { | 1367 void vcvtlsi2sd(XMMRegister dst, XMMRegister src1, Register src2) { |
1367 XMMRegister isrc2 = {src2.code()}; | 1368 XMMRegister isrc2 = {src2.code()}; |
1368 vsd(0x2a, dst, src1, isrc2, kF2, k0F, kW0); | 1369 vsd(0x2a, dst, src1, isrc2, kF2, k0F, kW0); |
1369 } | 1370 } |
1370 void vcvtlsi2sd(XMMRegister dst, XMMRegister src1, const Operand& src2) { | 1371 void vcvtlsi2sd(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
1371 vsd(0x2a, dst, src1, src2, kF2, k0F, kW0); | 1372 vsd(0x2a, dst, src1, src2, kF2, k0F, kW0); |
1372 } | 1373 } |
| 1374 void vcvtlsi2ss(XMMRegister dst, XMMRegister src1, Register src2) { |
| 1375 XMMRegister isrc2 = {src2.code()}; |
| 1376 vsd(0x2a, dst, src1, isrc2, kF3, k0F, kW0); |
| 1377 } |
| 1378 void vcvtlsi2ss(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
| 1379 vsd(0x2a, dst, src1, src2, kF3, k0F, kW0); |
| 1380 } |
1373 void vcvtqsi2ss(XMMRegister dst, XMMRegister src1, Register src2) { | 1381 void vcvtqsi2ss(XMMRegister dst, XMMRegister src1, Register src2) { |
1374 XMMRegister isrc2 = {src2.code()}; | 1382 XMMRegister isrc2 = {src2.code()}; |
1375 vsd(0x2a, dst, src1, isrc2, kF3, k0F, kW1); | 1383 vsd(0x2a, dst, src1, isrc2, kF3, k0F, kW1); |
1376 } | 1384 } |
1377 void vcvtqsi2ss(XMMRegister dst, XMMRegister src1, const Operand& src2) { | 1385 void vcvtqsi2ss(XMMRegister dst, XMMRegister src1, const Operand& src2) { |
1378 vsd(0x2a, dst, src1, src2, kF3, k0F, kW1); | 1386 vsd(0x2a, dst, src1, src2, kF3, k0F, kW1); |
1379 } | 1387 } |
1380 void vcvtqsi2sd(XMMRegister dst, XMMRegister src1, Register src2) { | 1388 void vcvtqsi2sd(XMMRegister dst, XMMRegister src1, Register src2) { |
1381 XMMRegister isrc2 = {src2.code()}; | 1389 XMMRegister isrc2 = {src2.code()}; |
1382 vsd(0x2a, dst, src1, isrc2, kF2, k0F, kW1); | 1390 vsd(0x2a, dst, src1, isrc2, kF2, k0F, kW1); |
(...skipping 806 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2189 Assembler* assembler_; | 2197 Assembler* assembler_; |
2190 #ifdef DEBUG | 2198 #ifdef DEBUG |
2191 int space_before_; | 2199 int space_before_; |
2192 #endif | 2200 #endif |
2193 }; | 2201 }; |
2194 | 2202 |
2195 } // namespace internal | 2203 } // namespace internal |
2196 } // namespace v8 | 2204 } // namespace v8 |
2197 | 2205 |
2198 #endif // V8_X64_ASSEMBLER_X64_H_ | 2206 #endif // V8_X64_ASSEMBLER_X64_H_ |
OLD | NEW |