Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(242)

Side by Side Diff: src/x64/assembler-x64.h

Issue 1476063002: [turbofan] Implemented the TruncateFloat32ToInt64 TurboFan operator. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Increased the type of opcodes from uint8_t to uint16_t. Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/compiler/x64/instruction-selector-x64.cc ('k') | src/x64/assembler-x64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 1059 matching lines...) Expand 10 before | Expand all | Expand 10 after
1070 1070
1071 void movapd(XMMRegister dst, XMMRegister src); 1071 void movapd(XMMRegister dst, XMMRegister src);
1072 1072
1073 void psllq(XMMRegister reg, byte imm8); 1073 void psllq(XMMRegister reg, byte imm8);
1074 void psrlq(XMMRegister reg, byte imm8); 1074 void psrlq(XMMRegister reg, byte imm8);
1075 void pslld(XMMRegister reg, byte imm8); 1075 void pslld(XMMRegister reg, byte imm8);
1076 void psrld(XMMRegister reg, byte imm8); 1076 void psrld(XMMRegister reg, byte imm8);
1077 1077
1078 void cvttsd2si(Register dst, const Operand& src); 1078 void cvttsd2si(Register dst, const Operand& src);
1079 void cvttsd2si(Register dst, XMMRegister src); 1079 void cvttsd2si(Register dst, XMMRegister src);
1080 void cvttss2siq(Register dst, XMMRegister src);
1081 void cvttss2siq(Register dst, const Operand& src);
1080 void cvttsd2siq(Register dst, XMMRegister src); 1082 void cvttsd2siq(Register dst, XMMRegister src);
1081 void cvttsd2siq(Register dst, const Operand& src); 1083 void cvttsd2siq(Register dst, const Operand& src);
1082 1084
1083 void cvtlsi2sd(XMMRegister dst, const Operand& src); 1085 void cvtlsi2sd(XMMRegister dst, const Operand& src);
1084 void cvtlsi2sd(XMMRegister dst, Register src); 1086 void cvtlsi2sd(XMMRegister dst, Register src);
1085 1087
1086 void cvtqsi2ss(XMMRegister dst, const Operand& src); 1088 void cvtqsi2ss(XMMRegister dst, const Operand& src);
1087 void cvtqsi2ss(XMMRegister dst, Register src); 1089 void cvtqsi2ss(XMMRegister dst, Register src);
1088 1090
1089 void cvtqsi2sd(XMMRegister dst, const Operand& src); 1091 void cvtqsi2sd(XMMRegister dst, const Operand& src);
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after
1383 vsd(0x2a, dst, src1, src2, kF2, k0F, kW1); 1385 vsd(0x2a, dst, src1, src2, kF2, k0F, kW1);
1384 } 1386 }
1385 void vcvttsd2si(Register dst, XMMRegister src) { 1387 void vcvttsd2si(Register dst, XMMRegister src) {
1386 XMMRegister idst = {dst.code()}; 1388 XMMRegister idst = {dst.code()};
1387 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW0); 1389 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW0);
1388 } 1390 }
1389 void vcvttsd2si(Register dst, const Operand& src) { 1391 void vcvttsd2si(Register dst, const Operand& src) {
1390 XMMRegister idst = {dst.code()}; 1392 XMMRegister idst = {dst.code()};
1391 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW0); 1393 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW0);
1392 } 1394 }
1395 void vcvttss2siq(Register dst, XMMRegister src) {
1396 XMMRegister idst = {dst.code()};
1397 vsd(0x2c, idst, xmm0, src, kF3, k0F, kW1);
1398 }
1399 void vcvttss2siq(Register dst, const Operand& src) {
1400 XMMRegister idst = {dst.code()};
1401 vsd(0x2c, idst, xmm0, src, kF3, k0F, kW1);
1402 }
1393 void vcvttsd2siq(Register dst, XMMRegister src) { 1403 void vcvttsd2siq(Register dst, XMMRegister src) {
1394 XMMRegister idst = {dst.code()}; 1404 XMMRegister idst = {dst.code()};
1395 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW1); 1405 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW1);
1396 } 1406 }
1397 void vcvttsd2siq(Register dst, const Operand& src) { 1407 void vcvttsd2siq(Register dst, const Operand& src) {
1398 XMMRegister idst = {dst.code()}; 1408 XMMRegister idst = {dst.code()};
1399 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW1); 1409 vsd(0x2c, idst, xmm0, src, kF2, k0F, kW1);
1400 } 1410 }
1401 void vcvtsd2si(Register dst, XMMRegister src) { 1411 void vcvtsd2si(Register dst, XMMRegister src) {
1402 XMMRegister idst = {dst.code()}; 1412 XMMRegister idst = {dst.code()};
(...skipping 776 matching lines...) Expand 10 before | Expand all | Expand 10 after
2179 Assembler* assembler_; 2189 Assembler* assembler_;
2180 #ifdef DEBUG 2190 #ifdef DEBUG
2181 int space_before_; 2191 int space_before_;
2182 #endif 2192 #endif
2183 }; 2193 };
2184 2194
2185 } // namespace internal 2195 } // namespace internal
2186 } // namespace v8 2196 } // namespace v8
2187 2197
2188 #endif // V8_X64_ASSEMBLER_X64_H_ 2198 #endif // V8_X64_ASSEMBLER_X64_H_
OLDNEW
« no previous file with comments | « src/compiler/x64/instruction-selector-x64.cc ('k') | src/x64/assembler-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698