| Index: src/x64/macro-assembler-x64.cc
|
| diff --git a/src/x64/macro-assembler-x64.cc b/src/x64/macro-assembler-x64.cc
|
| index 32581396fb010aad6c33d99d1c947438083b9a30..a202d099d32e31a2b51fba7fceb5556a7d2cb0bf 100644
|
| --- a/src/x64/macro-assembler-x64.cc
|
| +++ b/src/x64/macro-assembler-x64.cc
|
| @@ -851,6 +851,18 @@ void MacroAssembler::Cvtlsi2sd(XMMRegister dst, const Operand& src) {
|
| }
|
|
|
|
|
| +void MacroAssembler::Cvtqsi2sd(XMMRegister dst, Register src) {
|
| + if (CpuFeatures::IsSupported(AVX)) {
|
| + CpuFeatureScope scope(this, AVX);
|
| + vxorpd(dst, dst, dst);
|
| + vcvtqsi2sd(dst, dst, src);
|
| + } else {
|
| + xorpd(dst, dst);
|
| + cvtqsi2sd(dst, src);
|
| + }
|
| +}
|
| +
|
| +
|
| void MacroAssembler::Cvttsd2si(Register dst, XMMRegister src) {
|
| if (CpuFeatures::IsSupported(AVX)) {
|
| CpuFeatureScope scope(this, AVX);
|
| @@ -3457,7 +3469,7 @@ void MacroAssembler::LoadUint32(XMMRegister dst,
|
| cmpq(src, Immediate(0xffffffff));
|
| Assert(below_equal, kInputGPRIsExpectedToHaveUpper32Cleared);
|
| }
|
| - cvtqsi2sd(dst, src);
|
| + Cvtqsi2sd(dst, src);
|
| }
|
|
|
|
|
|
|