Index: src/x64/assembler-x64.h |
diff --git a/src/x64/assembler-x64.h b/src/x64/assembler-x64.h |
index 799fa6fe9d773c6654126aefc145182a8ae01d3a..6c10c66471bcf50bf83cb1eacfd172793eafa3d0 100644 |
--- a/src/x64/assembler-x64.h |
+++ b/src/x64/assembler-x64.h |
@@ -1079,6 +1079,8 @@ class Assembler : public AssemblerBase { |
void cvttsd2si(Register dst, XMMRegister src); |
void cvttss2siq(Register dst, XMMRegister src); |
void cvttss2siq(Register dst, const Operand& src); |
+ void cvtss2siq(Register dst, XMMRegister src); |
+ void cvtss2siq(Register dst, const Operand& src); |
void cvttsd2siq(Register dst, XMMRegister src); |
void cvttsd2siq(Register dst, const Operand& src); |
@@ -1099,6 +1101,7 @@ class Assembler : public AssemblerBase { |
void cvtsd2si(Register dst, XMMRegister src); |
void cvtsd2siq(Register dst, XMMRegister src); |
+ void cvtsd2siq(Register dst, const Operand& src); |
void addsd(XMMRegister dst, XMMRegister src); |
void addsd(XMMRegister dst, const Operand& src); |
@@ -1141,6 +1144,9 @@ class Assembler : public AssemblerBase { |
void roundss(XMMRegister dst, XMMRegister src, RoundingMode mode); |
void roundsd(XMMRegister dst, XMMRegister src, RoundingMode mode); |
+ void ldmxcsr(const Operand& dst); |
+ void stmxcsr(const Operand& dst); |
+ |
// AVX instruction |
void vfmadd132sd(XMMRegister dst, XMMRegister src1, XMMRegister src2) { |
vfmasd(0x99, dst, src1, src2); |
@@ -1400,6 +1406,14 @@ class Assembler : public AssemblerBase { |
XMMRegister idst = {dst.code()}; |
vsd(0x2c, idst, xmm0, src, kF3, k0F, kW1); |
} |
+ void vcvtss2siq(Register dst, XMMRegister src) { |
+ XMMRegister idst = {dst.code()}; |
+ vsd(0x2d, idst, xmm0, src, kF3, k0F, kW1); |
+ } |
+ void vcvtss2siq(Register dst, const Operand& src) { |
+ XMMRegister idst = {dst.code()}; |
+ vsd(0x2d, idst, xmm0, src, kF3, k0F, kW1); |
+ } |
void vcvttsd2siq(Register dst, XMMRegister src) { |
XMMRegister idst = {dst.code()}; |
vsd(0x2c, idst, xmm0, src, kF2, k0F, kW1); |
@@ -1408,6 +1422,14 @@ class Assembler : public AssemblerBase { |
XMMRegister idst = {dst.code()}; |
vsd(0x2c, idst, xmm0, src, kF2, k0F, kW1); |
} |
+ void vcvtsd2siq(Register dst, XMMRegister src) { |
+ XMMRegister idst = {dst.code()}; |
+ vsd(0x2d, idst, xmm0, src, kF2, k0F, kW1); |
+ } |
+ void vcvtsd2siq(Register dst, const Operand& src) { |
+ XMMRegister idst = {dst.code()}; |
+ vsd(0x2d, idst, xmm0, src, kF2, k0F, kW1); |
+ } |
void vcvtsd2si(Register dst, XMMRegister src) { |
XMMRegister idst = {dst.code()}; |
vsd(0x2d, idst, xmm0, src, kF2, k0F, kW0); |